feat(particles): bubble trail behind dolphin + block break burst

- BubbleTrail.gd: GPUParticles3D, auto-configured in _ready, set_intensity() API
- BlockBreakParticles.gd: one_shot burst, emit_burst(pos, color) API
- DolphinController.gd: bubble_trail onready + speed_factor hook in _update_movement
- Dolphin.tscn: BubbleEmitterPoint (0,0,1.2) > BubbleTrail child added

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Floppyrj45
2026-04-19 18:09:21 +02:00
parent cafdb7d27e
commit a8341355e3
12 changed files with 318 additions and 58 deletions

View File

@@ -1,8 +1,9 @@
[gd_scene load_steps=22 format=3 uid="uid://dolphin_main"]
[gd_scene load_steps=24 format=3 uid="uid://dolphin_main"]
[ext_resource type="Script" path="res://scripts/dolphin/DolphinController.gd" id="1_controller"]
[ext_resource type="Script" path="res://scripts/dolphin/HUD.gd" id="2_hud"]
[ext_resource type="Script" path="res://scripts/dolphin/EcholocationPulse.gd" id="3_echo"]
[ext_resource type="Script" path="res://scripts/dolphin/BubbleTrail.gd" id="4_bubble_trail"]
[sub_resource type="CapsuleShape3D" id="1_colshape"]
radius = 0.4
@@ -98,6 +99,12 @@ rotation = Vector3(0, 3.14159, 0)
[node name="Camera" type="Camera3D" parent="CameraPivot/SpringArm"]
[node name="BubbleEmitterPoint" type="Node3D" parent="."]
position = Vector3(0, 0, 1.2)
[node name="BubbleTrail" type="GPUParticles3D" parent="BubbleEmitterPoint"]
script = ExtResource("4_bubble_trail")
[node name="EcholocationPulse" type="Node3D" parent="."]
script = ExtResource("3_echo")