TweenService
*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.
TweenService używa do tworzenia Tweens , które interpoluje lub tweenuje właściwości instancji. Tweens można używać na dowolnym obiekcie z kompatybilnymi typami właściwości, w tym:
TweenService:Create() , główna funkcja konstruktora, wymaga TweenInfo specyfikacji tweenu i generuje obiekt Tween, który może następnie zostać użyty do odtwarzania tweenu.
Uwaga, że Tweens może interpolować wiele właściwości jednocześnie, ale nie może interpolować tej samej właściwości. Jeśli dwa nastolatki próbują zmodyfikować tę samą właściwość, pierwotny nastolat będzie anulowany i zapisany przez najnowszy nastolat.
Przykłady kodu
local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Position = Vector3.new(0, 10, 0)
part.Color = Color3.new(1, 0, 0)
part.Anchored = true
part.Parent = game.Workspace
local goal = {}
goal.Position = Vector3.new(10, 10, 0)
goal.Color = Color3.new(0, 1, 0)
local tweenInfo = TweenInfo.new(5)
local tween = TweenService:Create(part, tweenInfo, goal)
tween:Play()
local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Position = Vector3.new(0, 10, 0)
part.Anchored = true
part.Parent = workspace
local tweenInfo = TweenInfo.new(
2, -- Time
Enum.EasingStyle.Linear, -- EasingStyle
Enum.EasingDirection.Out, -- EasingDirection
-1, -- RepeatCount (when less than zero the tween will loop indefinitely)
true, -- Reverses (tween will reverse once reaching it's goal)
0 -- DelayTime
)
local tween = TweenService:Create(part, tweenInfo, { Position = Vector3.new(0, 30, 0) })
tween:Play()
task.wait(10)
tween:Cancel() -- cancel the animation after 10 seconds
local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Position = Vector3.new(0, 10, 0)
part.Anchored = true
part.BrickColor = BrickColor.new("Bright green")
part.Parent = workspace
local goal = {}
goal.Position = Vector3.new(50, 10, 0)
local tweenInfo = TweenInfo.new(10, Enum.EasingStyle.Linear)
local tween = TweenService:Create(part, tweenInfo, goal)
tween:Play()
task.wait(3)
part.BrickColor = BrickColor.new("Bright red")
tween:Pause()
task.wait(2)
part.BrickColor = BrickColor.new("Bright green")
tween:Play()
Podsumowanie
Metody
Tworzy nowy Tween przy użyciu obiektu, który ma być tzwany, a TweenInfo i słownik wartości celu.
- GetValue(alpha : number,easingStyle : Enum.EasingStyle,easingDirection : Enum.EasingDirection):number
Oblicza nową alfę, która ma Enum.EasingStyle i Enum.EasingDirection.
- SmoothDamp(current : Variant,target : Variant,velocity : Variant,smoothTime : number,maxSpeed : number?,dt : number?):Tuple
Właściwości
Metody
Create
Konstruktor Create() tworzy nowy Tween z trzech argumentów: obiekt do tween, specyfikację TweenInfo i tabelę zawierającą właściwości do tween i wartości do tween.
Parametr propertyTable musi być słownikiem, w którym klucze są nazwami właściwości (na przykład Position, Transparency lub 1> Color1>), a wartości są celami właściwości na końcu tweenu.
Tworzone za pomocą tej funkcji Tween jest wyjątkowe dla obiektu podanego jako parametr instance. Aby zastosować ten sam tween do innego obiektu, ponownie wezwij tę funkcję z nowym obiektem.
Parametry
Class.Instance , których właściwości należy zmienić.
Dizyna właściwości i ich wartości celu, do tego celu należy przetworzenie.
Zwroty
Przykłady kodu
local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Position = Vector3.new(0, 10, 0)
part.Color = Color3.new(1, 0, 0)
part.Anchored = true
part.Parent = game.Workspace
local goal = {}
goal.Position = Vector3.new(10, 10, 0)
goal.Color = Color3.new(0, 1, 0)
local tweenInfo = TweenInfo.new(5)
local tween = TweenService:Create(part, tweenInfo, goal)
tween:Play()
local TweenService = game:GetService("TweenService")
local part = Instance.new("Part")
part.Position = Vector3.new(0, 10, 0)
part.Anchored = true
part.Parent = workspace
local tweenInfo = TweenInfo.new(
2, -- Time
Enum.EasingStyle.Linear, -- EasingStyle
Enum.EasingDirection.Out, -- EasingDirection
-1, -- RepeatCount (when less than zero the tween will loop indefinitely)
true, -- Reverses (tween will reverse once reaching it's goal)
0 -- DelayTime
)
local tween = TweenService:Create(part, tweenInfo, { Position = Vector3.new(0, 30, 0) })
tween:Play()
task.wait(10)
tween:Cancel() -- cancel the animation after 10 seconds
GetValue
Zwraca nową wartość alfa dla interpolacji używając danej wartości alfa, Enum.EasingStyle i Enum.EasingDirection. Dostarczona wartość alpha będzie skalibrowana między 2>02> i 5>15>.
Parametry
Wartość interpolacji pomiędzy 0 i 1 .
Styl łatwienia do użycia.
Kierunek łatwiejszy do użycia.
Zwroty
Nowy wartości alpha generowane z podanego stylu łatwienia i kierunku.