extends WorldEnvironment var dof_strength_tween : Tween = null func _ready(): State.environment_settings_changed.connect(_on_environment_settings_update) Scenes.scene_starting.connect(scene_starting) Scenes.scene_finished.connect(scene_finished) _on_environment_settings_update() func focus_env(): if dof_strength_tween: dof_strength_tween.kill() dof_strength_tween.tween_property(camera_attributes, "dof_blur_amount", 0, 1) await(dof_strength_tween.finished) camera_attributes.dof_blur_near_enabled = false func focus_object(delay: float): if dof_strength_tween: dof_strength_tween.kill() camera_attributes.dof_blur_near_enabled = true dof_strength_tween = create_tween() dof_strength_tween.tween_property(camera_attributes, "dof_blur_amount", 0.4, 1).set_delay(delay) func scene_starting(id: int, _repeat: bool): if id == Scenes.id.YOUTH_VOICE_TRAINING: focus_object(10.0) else: focus_object(0.0) func scene_finished(_id: int, _repeat: bool): focus_env() func _on_environment_settings_update(): environment.ssil_enabled = State.ssil_enable environment.sdfgi_enabled = State.sdfgi_enable