diff options
author | tpart <tpart120@proton.me> | 2024-08-19 17:59:58 +0200 |
---|---|---|
committer | tpart <tpart120@proton.me> | 2024-08-19 18:00:02 +0200 |
commit | bb5523874179b5523ebf93bda42e62a00cfbaf80 (patch) | |
tree | ec3ac3bc5c4c81a660ec7311a142414132d2ec22 /client/map | |
parent | 5a38748d55eed46ecc6e2927246b7c45565af9a0 (diff) | |
download | hurrycurry-bb5523874179b5523ebf93bda42e62a00cfbaf80.tar hurrycurry-bb5523874179b5523ebf93bda42e62a00cfbaf80.tar.bz2 hurrycurry-bb5523874179b5523ebf93bda42e62a00cfbaf80.tar.zst |
Generalize sink particles; Add stream particles when filling up glass
Diffstat (limited to 'client/map')
-rw-r--r-- | client/map/tiles/sink.gd | 14 | ||||
-rw-r--r-- | client/map/tiles/sink_particles.gd (renamed from client/map/tiles/sink_bubbles.gd) | 6 | ||||
-rw-r--r-- | client/map/tiles/sink_particles.tscn (renamed from client/map/tiles/sink_bubbles.tscn) | 6 |
3 files changed, 14 insertions, 12 deletions
diff --git a/client/map/tiles/sink.gd b/client/map/tiles/sink.gd index e98a25d0..c39a2a2a 100644 --- a/client/map/tiles/sink.gd +++ b/client/map/tiles/sink.gd @@ -16,13 +16,13 @@ class_name Sink extends Counter -var bubbles: SinkBubbles = preload("res://map/tiles/sink_bubbles.tscn").instantiate() +var particles: SinkParticles = preload("res://map/tiles/sink_particles.tscn").instantiate() var running: AudioStreamPlayer3D = AudioStreamPlayer3D.new() var stopping: AudioStreamPlayer3D = AudioStreamPlayer3D.new() func _init(rename: String, neighbors: Array): super(rename, neighbors) - base.add_child(bubbles) + base.add_child(particles) match kind: CounterKind.STRAIGHT: base.add_child(load("res://map/tiles/sink.tscn").instantiate()) @@ -38,20 +38,22 @@ func _init(rename: String, neighbors: Array): func progress(p: float, warn: bool): super(p, warn) if item is Plate: - bubbles.start() + particles.start(true) + elif item is Glass: + particles.start() if not running.playing: running.play() func finish(warn: bool): super(warn) - bubbles.stop() + particles.stop() running.stop() stopping.play() func set_item(i: Item): super(i) - self.bubbles.stop() + particles.stop() func take_item() -> Item: - self.bubbles.stop() + particles.stop() return super() diff --git a/client/map/tiles/sink_bubbles.gd b/client/map/tiles/sink_particles.gd index 7afa7f5b..adc1564f 100644 --- a/client/map/tiles/sink_bubbles.gd +++ b/client/map/tiles/sink_particles.gd @@ -13,12 +13,12 @@ # You should have received a copy of the GNU Affero General Public License # along with this program. If not, see <https://www.gnu.org/licenses/>. # -class_name SinkBubbles +class_name SinkParticles extends Node3D -func start(): +func start(bubbles: bool = false): $Stream.emitting = true - $Bubbles.emitting = true + $Bubbles.emitting = bubbles func stop(): $Stream.emitting = false diff --git a/client/map/tiles/sink_bubbles.tscn b/client/map/tiles/sink_particles.tscn index 6e4487fa..7a54f841 100644 --- a/client/map/tiles/sink_bubbles.tscn +++ b/client/map/tiles/sink_particles.tscn @@ -1,6 +1,6 @@ [gd_scene load_steps=8 format=3 uid="uid://ckxtlgx7hg368"] -[ext_resource type="Script" path="res://map/tiles/sink_bubbles.gd" id="1_xt81f"] +[ext_resource type="Script" path="res://map/tiles/sink_particles.gd" id="1_vh7ox"] [sub_resource type="StandardMaterial3D" id="StandardMaterial3D_b8p5f"] vertex_color_use_as_albedo = true @@ -26,8 +26,8 @@ height = 0.1 _data = [Vector2(0.264045, 0), 0.0, 0.0, 0, 0, Vector2(0.460674, 1), 0.0, 0.0, 0, 0, Vector2(0.949438, 1), 0.0, 0.0, 0, 0, Vector2(1, 0), 0.0, 0.0, 0, 0] point_count = 4 -[node name="SinkBubbles" type="Node3D"] -script = ExtResource("1_xt81f") +[node name="SinkParticles" type="Node3D"] +script = ExtResource("1_vh7ox") [node name="Stream" type="CPUParticles3D" parent="."] transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0.75, -0.05) |