This release comes with drag-and-drop support for the Inspector and Filesystem docks, internationalization / localization support, UI enhacements, new blocks, and more improvements.
Internationalization / Localization
The block labels and tooltips can now be translated to other languages. This release comes with localizations for Spanish, German, Chinese, and Polish. However the blocks will appear localized starting from Godot 4.4. Please check the README if you wish to contribute a translation.
Drag-And-Drop Support
Now properties can be dragged from the Inspector and dropped in the Block Coding canvas. This will create a block for the property. Press
the Ctrl
key while releasing to obtain a "Set (value)" block that can change the property.
drag-from-inspector.webm
Similartly, now resources can be dragged from the Filesystem into the Block Coding canvas. No more need to edit the res://
paths in blocks that need it, like the "load sound".
drag-from-filesystem.webm
General Blocks Improvements
- New block "switch scene to (scene resource)" under category "Communication | Methods". To switch to another scene.
- New block "remove (node)" under category "Lifecycle".
- New Math blocks for Vector2: "vector from (angle)" and multiply vector by number.
Per-node Blocks Improvements
- AnimationPlayer node: The "play" block now has the option to wait until done or play the animation in the background.
- New UI block for Label nodes: "text = (text)".
- New blocks for CPUParticles2D node for handling the "emitting" property.
- Allow using Vector2 in boolean context.
High-Level Nodes Improvements
- New
SimpleEnding
node. Use it for adding a "you win" / "try again" screen to your game. - The
SimpleScoring
node has been simplified to a single score, so it can be used in more games. - The
SimpleSpawner
node can now spawn to the scene. And "frequency" has been renamed to "period".
User Interface Improvements
The entry blocks now have a distinct shape, to avoid confusing them with the statement blocks. And the boolean blocks are now pointy, as it's common in other block-coding platforms like Scratch or Blockly.
Other improvements and polish for the canvas user interface:
- Better contrast in block dropdowns and blocks for the Variables category.
- Zoom in and out buttons for the canvas.
- Better drop preview, with correct shape and scale.
- The "Show Generated Script" popup window looks better now.
- Include the value type in the tooltip.
What's Changed
- Update screenshot by @wjt in #246
- blocks: Add vector_from_angle and vector_multiply blocks by @dylanmccall in #247
- SimpleSpawner: Allow spawning nodes as child of scene by @wjt in #251
- blocks: Add label_set_text by @dylanmccall in #249
- simple_scoring: Show a single score label by @dylanmccall in #250
- Allow using Vector2 in boolean context by @wjt in #254
- blocks_catalog: Add emitting property for CPUParticles2D by @dylanmccall in #252
- Dropdown contrast by @DoomTas3r in #245
- Util: Fix getting sub-scene's root path by @starnight in #256
- Await until animation is finished by @manuq in #258
- blocks: Add remove node block by @dbnicholson in #259
- Fix typo in "call method on node" block by @wjt in #260
- block_canvas: Select the new block code node in add block code by @dylanmccall in #263
- blocks: Remove extra newlines from entry blocks by @dbnicholson in #276
- Scale preview block by @DoomTas3r in #281
- simple_nodes: Add SimpleEnding node by @dbnicholson in #277
- Zoom in and out buttons by @DoomTas3r in #275
- Fix script popup by @manuq in #286
- Update Variables blocks color by @manuq in #285
- Include type in tooltip by @DoomTas3r in #287
- SimpleSpawner: Rename frequency to period by @wjt in #272
- Handle SimpleSpawner compatibility by @dbnicholson in #290
- Fix uid conflict in example ball scenes by @dbnicholson in #297
- Translation infrastructure by @dbnicholson in #295
- Switch property labels back to human readable by @manuq in #303
- BlockCanvas: Implement drag & drop the node's property from Inspector by @starnight in #296
- Initial Transifex configuratoin by @dbnicholson in #306
- Transifex sync by @dbnicholson in #307
- README: Add info of drag & drop node's property from Inspector by @starnight in #309
- Add switch_scene resource by @vanessa-chang in #298
- Translation scripts by @dbnicholson in #301
- Update Gut addon to 9.3.0 by @wjt in #300
- Pull translations from Transifex by @manuq in #312
- Simple spawner rotation alt by @manuq in #294
- Fix "Type::" double colon in block tooltip by @wjt in #315
- Miscellaneous CI/linting improvements by @wjt in #318
- Update GitHub issue templates by @manuq in #319
- Add Polish translation from Transifex by @wjt in #322
- BlockScriptSerialization: Re-generate block definition for object property blocks by @starnight in #316
- Shapes refactor by @manuq in #323
- Update Gut import files for Godot 4.3 by @manuq in #324
- BlockCanvas: Implement drag & drop the file from resource FileSystem by @starnight in #305
- UI: Improve block shapes by @manuq in #325
- Pull translations from Transifex by @manuq in #327
- Pong example: Use blocks for sound resources by @manuq in #328
New Contributors
- @DoomTas3r made their first contribution in #245
- @vanessa-chang made their first contribution in #298
Full Changelog: v0.7.1...v0.8.0