diff --git a/ruf-der-pilze/scripts/tavern.gd b/ruf-der-pilze/scripts/tavern.gd index e96f163..079b356 100644 --- a/ruf-der-pilze/scripts/tavern.gd +++ b/ruf-der-pilze/scripts/tavern.gd @@ -159,10 +159,20 @@ func _setup_spore_overlay() -> void: canvas.add_child(rect) NetworkManager.overlay_changed.connect(_on_overlay_changed) + SporeLevel.level_changed.connect(_on_spore_level_changed) -func _on_overlay_changed(overlay_name: String) -> void: - var intensity := 1.0 if overlay_name == "spore_active" else 0.0 +func _on_overlay_changed(_overlay_name: String) -> void: + _apply_spore_intensity() + + +func _on_spore_level_changed(_level: float) -> void: + _apply_spore_intensity() + + +func _apply_spore_intensity() -> void: + var overlay_name := GameState.get_overlay(NetworkManager.my_id) + var intensity := SporeLevel.current_level if overlay_name == "spore_active" else 0.0 _spore_mat.set_shader_parameter("intensity", intensity)