TweenService

Tampilkan yang Tidak Digunakan Lagi

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

Tidak Dapat Dibuat
Layanan

TweenService digunakan untuk membuat Tweens yang menginterpolasi, atau tween, proporsi instans. Tweens dapat digunakan pada setiap objek dengan jenis proporsi yang kompatibel, termasuk:

TweenService:Create() , fungsi konstruktor utama, mengambil TweenInfo spesifikasi tentang tween dan menghasilkan objek Tween yang dapat kemudian digunakan untuk memainkan tween.

Catat bahwa Tweens dapat menginterpolasi banyak proporsi pada saat yang sama, tetapi mereka tidak boleh menginterpolasi proporsi yang sama. Jika dua tween mencoba untuk mengubah proporsi yang sama, tween awal akan dibatalkan dan ditulis ulang oleh tween terbaru.

Contoh Kode

Tween Creation

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()
Looping a Tween

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
Pausing a Tween

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()

Rangkuman

Metode

Properti

Metode

Create

Konstruktor Create() membuat Class.Tween baru dari tiga argumen: objek untuk tween, spesifikasi Tween , dan tabel yang berisi prop untuk tween dan nilai untuk tween.

Paraметre propertyTable harus menjadi kata pengucap di mana kunci adalah nama string dari propietas (misalnya Position , Transparency , atau 1>Color1> ) dan nilainya adalah target propietas di akhir tween.

Class.Tween yang dibuat menggunakan fungsi ini unik untuk objek yang diberikan sebagai parameter instance. Untuk menerapkan tween yang sama ke objek lain, panggil fungsi ini lagi dengan objek baru.

Parameter

instance: Instance

Class.Instance yang cuacanya harus diubah.

tweenInfo: TweenInfo

Datatype.TweenInfo untuk digunakan.

propertyTable: Dictionary

Sebuah kamus propinsi, dan nilai target mereka, untuk di tween.


Memberikan nilai

Contoh Kode

Tween Creation

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()
Looping a Tween

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

Mengembalikan nilai alfa baru untuk interpolasi menggunakan nilai alfa yang diberikan, Enum.EasingStyle , dan Enum.EasingDirection . Nilai alpha yang disediakan akan dikurung antara 1> 01> dan 4> 14> .

Parameter

alpha: number

Nilai intervensi antara 0 dan 1.

easingStyle: Enum.EasingStyle

Gaya mudah untuk digunakan.

easingDirection: Enum.EasingDirection

Arah mudah untuk digunakan.


Memberikan nilai

Alpha baru yang dihasilkan dari gaya dan arah yang diberikan.

SmoothDamp

Parameter

current: Variant
target: Variant
velocity: Variant
smoothTime: number
maxSpeed: number
dt: number

Memberikan nilai

Acara