summaryrefslogtreecommitdiff
path: root/doc/classes/PropertyTweener.xml
diff options
context:
space:
mode:
authorTomasz Chabora <kobewi4e@gmail.com>2020-09-05 03:05:30 +0200
committerkobewi <kobewi4e@gmail.com>2021-06-19 12:08:50 +0200
commit900b2e0fdcc12d28a744ae36004b9b2dc7f196d1 (patch)
treecce0d2056f87c504b081ddfd2fc9dc7614d2c608 /doc/classes/PropertyTweener.xml
parent12e0f10c74e9619262f1edcfdc1840432ada0565 (diff)
Complete rewrite of Tweens
* Tweens were changed from Node to RefCounted. New API is inspired by DOTween. * Tweens are created and managed by SceneTree, similar to SceneTreeTimer, which makes them ultra cheap to use a lot. * Animating with Tweens is done by creating sequences of Tweeners. You create them from code and they autostart by default (fire-and-forget). * There are 4 Tweeners that cover the former Tween functionality: PropertyTweener, IntervalTweener, CallbackTweener and MethodTweener. * The methods were simplified a lot. Long argument lists are replaced with chained calls on Tweens and Tweeners. * Tweeners by default execute in sequence, so it's easy to create complex chained animations. * You can bind a Tween to a node. Tween will be removed automatically when the bound node is freed.
Diffstat (limited to 'doc/classes/PropertyTweener.xml')
-rw-r--r--doc/classes/PropertyTweener.xml78
1 files changed, 78 insertions, 0 deletions
diff --git a/doc/classes/PropertyTweener.xml b/doc/classes/PropertyTweener.xml
new file mode 100644
index 0000000000..1e77bb33c6
--- /dev/null
+++ b/doc/classes/PropertyTweener.xml
@@ -0,0 +1,78 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="PropertyTweener" inherits="Tweener" version="4.0">
+ <brief_description>
+ Interpolates an [Object]'s property over time.
+ </brief_description>
+ <description>
+ [PropertyTweener] is used to interpolate a property in an object. See [method Tween.tween_property] for more usage information.
+ [b]Note:[/b] [method Tween.tween_property] is the only correct way to create [PropertyTweener]. Any [PropertyTweener] created manually will not function correctly.
+ </description>
+ <tutorials>
+ </tutorials>
+ <methods>
+ <method name="as_relative">
+ <return type="PropertyTweener">
+ </return>
+ <description>
+ When called, the final value will be used as a relative value instead. Example:
+ [codeblock]
+ var tween = get_tree().create_tween()
+ tween.tween_property(self, "position", Vector2.RIGHT * 100, 1).as_relative() #the node will move by 100 pixels to the right
+ [/codeblock]
+ </description>
+ </method>
+ <method name="from">
+ <return type="PropertyTweener">
+ </return>
+ <argument index="0" name="value" type="Variant">
+ </argument>
+ <description>
+ Sets a custom initial value to the [PropertyTweener]. Example:
+ [codeblock]
+ var tween = get_tree().create_tween()
+ tween.tween_property(self, "position", Vector2(200, 100), 1).from(Vector2(100, 100) #this will move the node from position (100, 100) to (200, 100)
+ [/codeblock]
+ </description>
+ </method>
+ <method name="from_current">
+ <return type="PropertyTweener">
+ </return>
+ <description>
+ Makes the [PropertyTweener] use the current property value (i.e. at the time of creating this [PropertyTweener]) as a starting point. This is equivalent of using [method from] with the current value. These two calls will do the same:
+ [codeblock]
+ tween.tween_property(self, "position", Vector2(200, 100), 1).from(position)
+ tween.tween_property(self, "position", Vector2(200, 100), 1).from_current()
+ [/codeblock]
+ </description>
+ </method>
+ <method name="set_delay">
+ <return type="PropertyTweener">
+ </return>
+ <argument index="0" name="delay" type="float">
+ </argument>
+ <description>
+ Sets the time in seconds after which the [PropertyTweener] will start interpolating. By default there's no delay.
+ </description>
+ </method>
+ <method name="set_ease">
+ <return type="PropertyTweener">
+ </return>
+ <argument index="0" name="ease" type="int" enum="Tween.EaseType">
+ </argument>
+ <description>
+ Sets the type of used easing from [enum Tween.EaseType]. If not set, the default easing is used from the [Tween] that contains this Tweener.
+ </description>
+ </method>
+ <method name="set_trans">
+ <return type="PropertyTweener">
+ </return>
+ <argument index="0" name="trans" type="int" enum="Tween.TransitionType">
+ </argument>
+ <description>
+ Sets the type of used transition from [enum Tween.TransitionType]. If not set, the default transition is used from the [Tween] that contains this Tweener.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>