extends AudioStreamPlayer export var base_volume: float = -15.0 export var base_pitch: float = 1.0 export var submerged_volume: float = 5.0 export var submerged_pitch: float = 0.75 export var pit_volume: float = 2 export var pit_pitch: float = 0.25 func _ready(): var _ignore = GlobalEventBus.connect("player_entered_meat_sink", self, "enter_water") _ignore = GlobalEventBus.connect("player_exited_meat_sink", self, "exit_water") volume_db = base_volume var water = 0 func enter_water(): water += 1 func exit_water(): water -= 1 func _process(delta): var target_volume = base_volume var target_pitch = base_pitch if water: target_volume = submerged_volume target_pitch = submerged_pitch if Util.player.camera_position().y <= -18: target_volume = pit_volume target_pitch = pit_pitch volume_db = Util.clamped_lerp(volume_db, target_volume, delta*5, 0.01) pitch_scale = Util.clamped_lerp(pitch_scale, target_pitch, delta*5, 0.01)