summaryrefslogtreecommitdiffstats
path: root/scene/animation/animation_player.h
diff options
context:
space:
mode:
Diffstat (limited to 'scene/animation/animation_player.h')
-rw-r--r--scene/animation/animation_player.h19
1 files changed, 18 insertions, 1 deletions
diff --git a/scene/animation/animation_player.h b/scene/animation/animation_player.h
index 13e1e37ca9..f270f32193 100644
--- a/scene/animation/animation_player.h
+++ b/scene/animation/animation_player.h
@@ -56,6 +56,12 @@ private:
float speed_scale = 1.0;
double default_blend_time = 0.0;
+
+ bool auto_capture = true;
+ double auto_capture_duration = -1.0;
+ Tween::TransitionType auto_capture_transition_type = Tween::TRANS_LINEAR;
+ Tween::EaseType auto_capture_ease_type = Tween::EASE_IN;
+
bool is_stopping = false;
struct PlaybackData {
@@ -108,6 +114,8 @@ private:
bool reset_on_save = true;
bool movie_quit_on_finish = false;
+ void _play(const StringName &p_name, double p_custom_blend = -1, float p_custom_scale = 1.0, bool p_from_end = false);
+ void _capture(const StringName &p_name, bool p_from_end = false, double p_duration = -1.0, Tween::TransitionType p_trans_type = Tween::TRANS_LINEAR, Tween::EaseType p_ease_type = Tween::EASE_IN);
void _process_playback_data(PlaybackData &cd, double p_delta, float p_blend, bool p_seeked, bool p_started, bool p_is_current = false);
void _blend_playback_data(double p_delta, bool p_started);
void _stop_internal(bool p_reset, bool p_keep_state);
@@ -158,9 +166,18 @@ public:
void set_default_blend_time(double p_default);
double get_default_blend_time() const;
+ void set_auto_capture(bool p_auto_capture);
+ bool is_auto_capture() const;
+ void set_auto_capture_duration(double p_auto_capture_duration);
+ double get_auto_capture_duration() const;
+ void set_auto_capture_transition_type(Tween::TransitionType p_auto_capture_transition_type);
+ Tween::TransitionType get_auto_capture_transition_type() const;
+ void set_auto_capture_ease_type(Tween::EaseType p_auto_capture_ease_type);
+ Tween::EaseType get_auto_capture_ease_type() const;
+
void play(const StringName &p_name = StringName(), double p_custom_blend = -1, float p_custom_scale = 1.0, bool p_from_end = false);
void play_backwards(const StringName &p_name = StringName(), double p_custom_blend = -1);
- void play_with_capture(const StringName &p_name, double p_duration = -1.0, double p_custom_blend = -1, float p_custom_scale = 1.0, bool p_from_end = false, Tween::TransitionType p_trans_type = Tween::TRANS_LINEAR, Tween::EaseType p_ease_type = Tween::EASE_IN);
+ void play_with_capture(const StringName &p_name = StringName(), double p_duration = -1.0, double p_custom_blend = -1, float p_custom_scale = 1.0, bool p_from_end = false, Tween::TransitionType p_trans_type = Tween::TRANS_LINEAR, Tween::EaseType p_ease_type = Tween::EASE_IN);
void queue(const StringName &p_name);
Vector<String> get_queue();
void clear_queue();