|
@@ -57,6 +57,11 @@ void Tweener::set_tween(const Ref<Tween> &p_tween) {
|
|
|
tween_id = p_tween->get_instance_id();
|
|
|
}
|
|
|
|
|
|
+void Tweener::start() {
|
|
|
+ elapsed_time = 0;
|
|
|
+ finished = false;
|
|
|
+}
|
|
|
+
|
|
|
Ref<Tween> Tweener::_get_tween() {
|
|
|
return Ref<Tween>(ObjectDB::get_instance(tween_id));
|
|
|
}
|
|
@@ -121,7 +126,8 @@ Ref<PropertyTweener> Tween::tween_property(const Object *p_target, const NodePat
|
|
|
return nullptr;
|
|
|
}
|
|
|
|
|
|
- Ref<PropertyTweener> tweener = memnew(PropertyTweener(p_target, property_subnames, p_to, p_duration));
|
|
|
+ Ref<PropertyTweener> tweener;
|
|
|
+ tweener.instantiate(p_target, property_subnames, p_to, p_duration);
|
|
|
append(tweener);
|
|
|
return tweener;
|
|
|
}
|
|
@@ -129,7 +135,8 @@ Ref<PropertyTweener> Tween::tween_property(const Object *p_target, const NodePat
|
|
|
Ref<IntervalTweener> Tween::tween_interval(double p_time) {
|
|
|
CHECK_VALID();
|
|
|
|
|
|
- Ref<IntervalTweener> tweener = memnew(IntervalTweener(p_time));
|
|
|
+ Ref<IntervalTweener> tweener;
|
|
|
+ tweener.instantiate(p_time);
|
|
|
append(tweener);
|
|
|
return tweener;
|
|
|
}
|
|
@@ -137,7 +144,8 @@ Ref<IntervalTweener> Tween::tween_interval(double p_time) {
|
|
|
Ref<CallbackTweener> Tween::tween_callback(const Callable &p_callback) {
|
|
|
CHECK_VALID();
|
|
|
|
|
|
- Ref<CallbackTweener> tweener = memnew(CallbackTweener(p_callback));
|
|
|
+ Ref<CallbackTweener> tweener;
|
|
|
+ tweener.instantiate(p_callback);
|
|
|
append(tweener);
|
|
|
return tweener;
|
|
|
}
|
|
@@ -149,7 +157,8 @@ Ref<MethodTweener> Tween::tween_method(const Callable &p_callback, const Variant
|
|
|
return nullptr;
|
|
|
}
|
|
|
|
|
|
- Ref<MethodTweener> tweener = memnew(MethodTweener(p_callback, p_from, p_to, p_duration));
|
|
|
+ Ref<MethodTweener> tweener;
|
|
|
+ tweener.instantiate(p_callback, p_from, p_to, p_duration);
|
|
|
append(tweener);
|
|
|
return tweener;
|
|
|
}
|
|
@@ -232,7 +241,7 @@ Ref<Tween> Tween::set_process_mode(TweenProcessMode p_mode) {
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
-Tween::TweenProcessMode Tween::get_process_mode() {
|
|
|
+Tween::TweenProcessMode Tween::get_process_mode() const {
|
|
|
return process_mode;
|
|
|
}
|
|
|
|
|
@@ -241,7 +250,7 @@ Ref<Tween> Tween::set_pause_mode(TweenPauseMode p_mode) {
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
-Tween::TweenPauseMode Tween::get_pause_mode() {
|
|
|
+Tween::TweenPauseMode Tween::get_pause_mode() const {
|
|
|
return pause_mode;
|
|
|
}
|
|
|
|
|
@@ -283,7 +292,7 @@ Ref<Tween> Tween::set_trans(TransitionType p_trans) {
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
-Tween::TransitionType Tween::get_trans() {
|
|
|
+Tween::TransitionType Tween::get_trans() const {
|
|
|
return default_transition;
|
|
|
}
|
|
|
|
|
@@ -292,7 +301,7 @@ Ref<Tween> Tween::set_ease(EaseType p_ease) {
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
-Tween::EaseType Tween::get_ease() {
|
|
|
+Tween::EaseType Tween::get_ease() const {
|
|
|
return default_ease;
|
|
|
}
|
|
|
|
|
@@ -528,10 +537,6 @@ Tween::Tween() {
|
|
|
ERR_FAIL_MSG("Tween can't be created directly. Use create_tween() method.");
|
|
|
}
|
|
|
|
|
|
-Tween::Tween(bool p_valid) {
|
|
|
- valid = p_valid;
|
|
|
-}
|
|
|
-
|
|
|
Tween::Tween(SceneTree *p_parent_tree) {
|
|
|
parent_tree = p_parent_tree;
|
|
|
valid = true;
|
|
@@ -582,8 +587,7 @@ Ref<PropertyTweener> PropertyTweener::set_delay(double p_delay) {
|
|
|
}
|
|
|
|
|
|
void PropertyTweener::start() {
|
|
|
- elapsed_time = 0;
|
|
|
- finished = false;
|
|
|
+ Tweener::start();
|
|
|
|
|
|
Object *target_instance = ObjectDB::get_instance(target);
|
|
|
if (!target_instance) {
|
|
@@ -696,11 +700,6 @@ PropertyTweener::PropertyTweener() {
|
|
|
ERR_FAIL_MSG("PropertyTweener can't be created directly. Use the tween_property() method in Tween.");
|
|
|
}
|
|
|
|
|
|
-void IntervalTweener::start() {
|
|
|
- elapsed_time = 0;
|
|
|
- finished = false;
|
|
|
-}
|
|
|
-
|
|
|
bool IntervalTweener::step(double &r_delta) {
|
|
|
if (finished) {
|
|
|
return false;
|
|
@@ -731,11 +730,6 @@ Ref<CallbackTweener> CallbackTweener::set_delay(double p_delay) {
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
-void CallbackTweener::start() {
|
|
|
- elapsed_time = 0;
|
|
|
- finished = false;
|
|
|
-}
|
|
|
-
|
|
|
bool CallbackTweener::step(double &r_delta) {
|
|
|
if (finished) {
|
|
|
return false;
|
|
@@ -796,11 +790,6 @@ Ref<MethodTweener> MethodTweener::set_ease(Tween::EaseType p_ease) {
|
|
|
return this;
|
|
|
}
|
|
|
|
|
|
-void MethodTweener::start() {
|
|
|
- elapsed_time = 0;
|
|
|
- finished = false;
|
|
|
-}
|
|
|
-
|
|
|
bool MethodTweener::step(double &r_delta) {
|
|
|
if (finished) {
|
|
|
return false;
|
|
@@ -881,8 +870,7 @@ MethodTweener::MethodTweener() {
|
|
|
}
|
|
|
|
|
|
void SubtweenTweener::start() {
|
|
|
- elapsed_time = 0;
|
|
|
- finished = false;
|
|
|
+ Tweener::start();
|
|
|
|
|
|
// Reset the subtween.
|
|
|
subtween->stop();
|