diff options
Diffstat (limited to 'scene/3d/audio_stream_player_3d.cpp')
-rw-r--r-- | scene/3d/audio_stream_player_3d.cpp | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/scene/3d/audio_stream_player_3d.cpp b/scene/3d/audio_stream_player_3d.cpp index 6abc2caac8..6efdf25f0d 100644 --- a/scene/3d/audio_stream_player_3d.cpp +++ b/scene/3d/audio_stream_player_3d.cpp @@ -215,7 +215,7 @@ void AudioStreamPlayer3D::_notification(int p_what) { velocity_tracker->reset(get_global_transform().origin); AudioServer::get_singleton()->add_callback(_mix_audios, this); - if (autoplay && !get_tree()->is_editor_hint()) { + if (autoplay && !Engine::get_singleton()->is_editor_hint()) { play(); } } @@ -266,7 +266,7 @@ void AudioStreamPlayer3D::_notification(int p_what) { if (!sr[i].collider) continue; - Area *tarea = sr[i].collider->cast_to<Area>(); + Area *tarea = Object::cast_to<Area>(sr[i].collider); if (!tarea) continue; @@ -533,6 +533,7 @@ void AudioStreamPlayer3D::_notification(int p_what) { if (!active) { set_fixed_process_internal(false); _change_notify("playing"); //update property in editor + emit_signal("finished"); } } } @@ -888,16 +889,18 @@ void AudioStreamPlayer3D::_bind_methods() { ADD_GROUP("Doppler", "doppler_"); ADD_PROPERTY(PropertyInfo(Variant::INT, "doppler_tracking", PROPERTY_HINT_ENUM, "Disabled,Idle,Fixed"), "set_doppler_tracking", "get_doppler_tracking"); - BIND_CONSTANT(ATTENUATION_INVERSE_DISTANCE); - BIND_CONSTANT(ATTENUATION_INVERSE_SQUARE_DISTANCE); - BIND_CONSTANT(ATTENUATION_LOGARITHMIC); + BIND_ENUM_CONSTANT(ATTENUATION_INVERSE_DISTANCE); + BIND_ENUM_CONSTANT(ATTENUATION_INVERSE_SQUARE_DISTANCE); + BIND_ENUM_CONSTANT(ATTENUATION_LOGARITHMIC); - BIND_CONSTANT(OUT_OF_RANGE_MIX); - BIND_CONSTANT(OUT_OF_RANGE_PAUSE); + BIND_ENUM_CONSTANT(OUT_OF_RANGE_MIX); + BIND_ENUM_CONSTANT(OUT_OF_RANGE_PAUSE); - BIND_CONSTANT(DOPPLER_TRACKING_DISABLED); - BIND_CONSTANT(DOPPLER_TRACKING_IDLE_STEP); - BIND_CONSTANT(DOPPLER_TRACKING_FIXED_STEP); + BIND_ENUM_CONSTANT(DOPPLER_TRACKING_DISABLED); + BIND_ENUM_CONSTANT(DOPPLER_TRACKING_IDLE_STEP); + BIND_ENUM_CONSTANT(DOPPLER_TRACKING_FIXED_STEP); + + ADD_SIGNAL(MethodInfo("finished")); } AudioStreamPlayer3D::AudioStreamPlayer3D() { |