From b21e2f94f287819275e938bdddfb603746754202 Mon Sep 17 00:00:00 2001 From: Ryan Reed Date: Mon, 24 Mar 2025 20:40:16 -0400 Subject: [PATCH] Updating signals --- scenes/world/day_night_cycle_component.gd | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/scenes/world/day_night_cycle_component.gd b/scenes/world/day_night_cycle_component.gd index 3003ba0..b7f6b99 100644 --- a/scenes/world/day_night_cycle_component.gd +++ b/scenes/world/day_night_cycle_component.gd @@ -1,10 +1,11 @@ extends Node3D -signal change_day_length(length_in_seconds: float) signal end_of_day signal pause_time signal resume_time +signal set_day_length(length_in_seconds: float) +signal set_rate_of_time(rate: float) ## 2.0 for 2x signal set_time(time: float) ## Time should be between 0 and 1 @@ -61,14 +62,15 @@ func _process(delta: float) -> void: environment.environment.sky.sky_material.set("ground_horizon_color", ground_horizon_color.sample(time)) func _ready() -> void: - change_day_length.connect(_on_change_day_length) pause_time.connect(_on_pause_time) resume_time.connect(_on_resume_time) + set_day_length.connect(_on_set_day_length) + set_rate_of_time.connect(_on_set_rate_of_time) -func _on_change_day_length(seconds: float) -> void: - day_length = seconds - tick_rate = 1.0 / day_length +func update_tick_rate(new_rate: float = 1.0) -> void: + tick_rate = new_rate / day_length + func _on_pause_time() -> void: time_paused = true @@ -76,5 +78,12 @@ func _on_pause_time() -> void: func _on_resume_time() -> void: time_paused = true +func _on_set_day_length(seconds: float) -> void: + day_length = seconds + update_tick_rate() + +func _on_set_rate_of_time(new_rate: float) -> void: + update_tick_rate(new_rate) + func _on_set_time(new_time: float) -> void: time = new_time