From d18b148be6470a0e91bbfcf30437be70b4ef3b57 Mon Sep 17 00:00:00 2001 From: nokoe Date: Fri, 27 Sep 2024 22:34:19 +0200 Subject: move progress data and sounds from progress bar to item --- client/map/progress.gd | 44 +++----------------------------------------- 1 file changed, 3 insertions(+), 41 deletions(-) (limited to 'client/map/progress.gd') diff --git a/client/map/progress.gd b/client/map/progress.gd index 96edb574..fc31408c 100644 --- a/client/map/progress.gd +++ b/client/map/progress.gd @@ -18,45 +18,7 @@ class_name ProgressBar3D extends MeshInstance3D -const PLAY_RANDOM_SCENE = preload("res://audio/play_random.tscn") - -var beep_node: PlayRandom = PLAY_RANDOM_SCENE.instantiate() -var ding_node: PlayRandom = PLAY_RANDOM_SCENE.instantiate() - -var speed := 0. -var position_ := 0. -var warn := false - -func _ready(): - add_child(beep_node) - add_child(ding_node) - - beep_node.randomize_pitch = false - beep_node.volume_db = -12 - beep_node.setup([load("res://map/tiles/sounds/beep.ogg")]) - - ding_node.randomize_pitch = false - ding_node.volume_db = -12 - ding_node.setup([load("res://map/tiles/sounds/ding.ogg")]) - -func update(new_position: float, new_speed: float, new_warn: bool): - speed = new_speed - position_ = new_position - warn = new_warn - - var mat: ShaderMaterial = get_active_material(0) - mat.set_shader_parameter("progress", position_) - mat.set_shader_parameter("bad", warn) - - # Always play ding sound if item is making progress while warn - if warn and speed > 0.: ding_node.play_random() - -func _process(delta: float): - position_ += delta * speed - var time_remaining = (1 - position_) / speed - - if warn and speed > 0 and time_remaining < 5.: beep_node.start_autoplay() - else: beep_node.stop_autoplay() - +func update(new_position: float, new_warn: bool): var mat: ShaderMaterial = get_active_material(0) - mat.set_shader_parameter("progress", position_) + mat.set_shader_parameter("progress", new_position) + mat.set_shader_parameter("bad", new_warn) -- cgit v1.2.3-70-g09d2