Releases: endlessm/godot-block-coding
v0.7.1
This release introduces natural language labels for blocks. For example, instead of "On ready", there is now a "when starting" block.
It also includes the following new features:
- Nodes can be used as parameters for blocks such as such as "call method {method_name} in {node}". To use a node as a block, drag it and drop it from the scene tree to the block canvas.
- There is a new SimpleSpawner node, which spawns nodes based on a set of properties
- In blocks related to groups, there is an options list to choose between groups. The list shows groups in the current scene, as well as global groups in Godot 4.3.
Finally, there are some performance and usability enhancements for the block canvas. With this update, it is faster for the block code editor to switch between block scripts.
What's Changed
- Block picker enhancements by @dylanmccall in #228
- Allow dragging nodes to block canvas by @dbnicholson in #227
- Add SimpleSpawner node and blocks by @manuq in #230
- ParameterInput: Detect click & drag gestures by @dylanmccall in #233
- Switch block labels to natural language by @manuq in #231
- Block: Set z_index on focus by @dylanmccall in #237
- ParameterInput: Ignore mouse events when not visible by @dylanmccall in #236
- Pong: Use call method in node by @dylanmccall in #239
- block: Show tooltips for blocks by @wjt in #235
- DragDropArea: Add offset to drag_started signal by @dylanmccall in #238
- BlockCanvas: Use _gui_input instead of _input by @dylanmccall in #241
- Fix error in simple_spawner.gd with Godot 4.2.2 by @dylanmccall in #242
- blocks: Add groups option block extension by @dbnicholson in #240
- blocks: Use string type for group names by @dylanmccall in #243
Full Changelog: v0.7.0...v0.7.1
v0.7.0
This release includes an extensive rewrite of many low level aspects of the godot-block-coding plugin. Blocks are now specified as resources, which makes it easier to create new blocks and reduces the amount of duplication in scene files containing BlockCode
nodes.
New blocks are included:
- Play, Stop, Pause or Continue a sound.
- Generate random integer or floating point numbers.
- Execute trigonometry functions like sin, cos, and tan.
- Check if a CharacterBody2D node is on the floor.
- Breakpoint, to pause execution in the Godot debugger.
The AnimationPlayer blocks, such as "Play {animation}", now use an options list populated with available animations instead of a free text input field.
The user interface has also been updated with new tooltips for blocks, a way to quickly reset the zoom level, and several gradual improvements related to keyboard accessibility.
What's Changed
- Show generated script in a window by @manuq in #183
- T35536 decouple mid-term option by @manuq in #164
- Block: Allow deleting with Delete button by @dbnicholson in #170
- T35536 renames by @manuq in #178
- Zoom label enhancements by @dylanmccall in #188
- Prepare data model for UI decoupling by @wnbaum in #190
- category_factory: Add another Sounds blocks for GDScript flavor by @starnight in #174
- T35591 Read block definition from resource files by @manuq in #192
- T35591 Add remaining general blocks by @manuq in #195
- Add 4 random number generation blocks by @jfcharron in #194
- Build simple node scenes in code by @dbnicholson in #171
- Move development project to Godot 4.3 by @manuq in #197
- Adds sin, cos and tan trigonometry function by @jfcharron in #198
- T35591 more block definitions by @manuq in #199
- Check _selected_block_code is still valid before disconnecting by @dylanmccall in #207
- blocks: add viewport, simple_character, and characterbody2d_move tooltips by @cassidyjames in #209
- Fix signal name for area2d_on_exited block by @manuq in #212
- Remove _exit_tree methods from Simple nodes by @manuq in #214
- SimpleCharacter: Don't impose a collision shape by @manuq in #216
- Decouple UI from Code Generation by @wnbaum in #147
- Add character states by @manuq in #217
- ParameterInput: Don't snap blocks for option inputs by @dbnicholson in #219
- Improve keyboard accessibility in create_variable_dialog by @dylanmccall in #221
- README: Document installing a development snapshot by @wjt in #220
- Add dynamic options lists for blocks by @dylanmccall in #206
- Add breakpoint block by @dylanmccall in #224
- Add is_input_actioned.tres by @dylanmccall in #222
- Doc updates by @dsd in #225
- Add category block order by @dylanmccall in #226
- Cleanup dependencies by @dbnicholson in #229
New Contributors
- @jfcharron made their first contribution in #194
Full Changelog: v0.6.2...v0.7.0
v0.6.2
What's Changed
- ci: Use asset lib action 0.6.0 by @wjt in #159
- Text validation by @manuq in #160
- category_factory: Tweak tooltips by @cassidyjames in #163
- Util: Make node_is_part_of_edited_scene safer by @dbnicholson in #169
- category_factory: Add pause, stop and continue audio feature by @starnight in #161
- Block: Set bottom_snap_path when ready by @manuq in #175
- Block Canvas: Reuse saved block scene resource by @manuq in #176
- Parameter input: Fix Vector2 split by @manuq in #173
- Improve ControlBlock background drawing by @dylanmccall in #177
- Fix InstructionTree and Block circular dependency by @dbnicholson in #182
Full Changelog: v0.6.1...v0.6.2
v0.6.1
Please be advised that the saved format is still in flux. If you tried the plugin before, you will have to recreate your blocks.
What's Changed
- BlockCanvas: Fix block node array typing by @dbnicholson in #150
- Revert "Block: Handle bottom_snap property directly" by @manuq in #153
- Fix main_scene corruption by @manuq in #154
- First import fixes by @manuq in #155
- Block: Add FIXME note for using SnapPoint directly by @manuq in #156
- Block: Add setter to manage bottom_snap by @dbnicholson in #157
Full Changelog: v0.6.0...v0.7.0
v0.6.0
Please be advised that the saved format is still in flux. If you tried the plugin before, you will have to recreate your blocks.
What's Changed
- SimpleCharacter: Use methods for player movement by @manuq in #118
- Add blockcode warnings by @dylanmccall in #119
- Bump chickensoft-games/setup-godot from 2.0.1 to 2.1.1 by @dependabot in #125
- Add blocks for AnimationPlayer by @manuq in #124
- T35541 block code in bottom panel by @dylanmccall in #117
- Add zoom and pan to block canvas by @wnbaum in #120
- Make SimpleCharacter more flexible by @manuq in #123
- T35541 cleanups by @dylanmccall in #127
- Add version to block script data by @manuq in #122
- Always scroll block canvas to the top-left block on open by @dylanmccall in #128
- In block_canvas, snap EntryBlock blocks to a grid by @dylanmccall in #130
- Set MOUSE_FILTER_IGNORE for blocks where necessary by @dylanmccall in #129
- Revamp variable system by @wnbaum in #107
- Add _to_string for Block by @dylanmccall in #134
- ci: Set Python version for setup-python by @wjt in #136
- Add rich-text tooltips for blocks by @wjt in #135
- Pong: Fix scoring by @dbnicholson in #139
- Test serialization by @dbnicholson in #132
- tooltip: Don't save style overrides to tooltip.tscn by @wjt in #138
- Change Simple node scripts to instantiate themselves by @dylanmccall in #141
- Leak fixes by @dbnicholson in #143
- Reinstate stylebox overrides by @wjt in #144
- Serialization: Reuse SerializedBlock resources by @manuq in #137
- Parameter input: change text modification logic by @manuq in #142
- Plugin: Only skip duplicate work when BlockCode nodes selected by @dbnicholson in #145
Full Changelog: v0.5.0...v0.6.0
0.5.0
Compatibility improvements:
- Improve compatibility with Godot 4.3 beta
- Add workaround for compatibility with Godot 4.2.1
Bug fixes:
- Fix errors related to parameter blocks
- Correct tooltip for block picker toggle button
- Simplify drawing block backgrounds
- Remove unused code
Other improvements:
- Animate when scrolling between categories
- Use physical keys for implicit WASD & arrow-key input
v0.4.0
New features
- Scratch-like character UI
- Expose CharacterBody2D velocity
- Add viewport value blocks
Fixes
- Fix InputMap load removing spatial_editor actions in editor
- Fix error when dragging parameter blocks
- Fix getting started instructions
Development changes
- Document using the GUT CLI to run tests
- Update GitHub Action that publishes to Godot Asset Library
New Contributors 🎉
- @Cafezinhu made their first contribution in #102. Congratulations on making the first contribution from outside Endless!
Full Changelog: v0.3.1...v0.4.0
0.3.1
- Use commit hash rather than tag name in Asset Library submission
Full Changelog: v0.3.0...v0.3.1
0.3.0
What's Changed
- github: Drop the publish job's action type check by @starnight in #85
- Add scope to blocks by @wnbaum in #79
- Populate more fields of plugin.cfg by @wjt in #88
- Add simple character to node dialog by @wnbaum in #89
- Update index number for categories order by @manuq in #86
- category_factory: Add tooltips into Lifecycle and Sounds blocks by @starnight in #90
- Update project title by @manuq in #49
- Fix Simple node setup not happening by @wnbaum in #91
- test_category_factory: Free Block nodes by @dbnicholson in #93
- Add template for upload to asset library by @wjt in #87
Full Changelog: v0.2.0...v0.3.0
0.2.0
- Icon tweak
- Rename signals to methods
- Add a "Send method to node" block
- When generating a script, merge duplicate entry blocks
- Block snapping improvements
- Expander buttons to show/hide block categories
- Hint if a block will be deleted when it is dragged
- Add undo-redo functionality
- Add SimpleCharacter and SimpleScoring game-building components with custom blocks
- Update Pong example
Full Changelog: v0.1.0...v0.2.0