Хорошо, это то, что я придумал.Он буквально не дает мне знать, когда слайдер выпущен, но он говорит мне, когда игрок перестает редактировать слайдер.Он по-прежнему посылает предупреждение, если вы сделаете небольшую паузу, но это нормально для моей игры.Он не отправляет непрерывные оповещения, например, если вы просто используете _on_HSlider_value_changed (), чего я и хотел избежать.
var old = self.value #start value of slider
var timer_on = false
#will be called continuously while editing timer
func editing_slider(new):
#only start a timer, if there isn't one already or you'll have a million
if not timer_on:
#start timer
timer_on = true
yield(get_tree().create_timer(.2), "timeout" )
timer_on = false
#if still editing, re call function
if old != new:
editing_slider(new)
#done editing
else:
print("slider set to " + str(value))
old = new
func _on_HSlider_value_changed(value):
editing_slider(value)
Если вы хотите, чтобы предупреждение не вызывалось, когда пользователь делает паузу, но не отпускает, вам нужно выполнить какую-то проверку InputEvent.