Анімація зміни властивостей об’єктів

TweenService — це сервіс, який дозволяє плавно анімувати зміни властивостей об’єктів (наприклад, позицію, розмір, прозорість, колір тощо). Це дуже корисно для створення візуальних ефектів, UI-анімацій та плавних переходів у грі.


🔧 Як працювати з TweenService:

1. Імпорт TweenService

local TweenService = game:GetService("TweenService")

🧱 Основні кроки використання:

🔹 Крок 1: Вибрати об’єкт, властивість якого хочеш змінити

Наприклад, Part:

local part = workspace.Part

🔹 Крок 2: Створити TweenInfo

Це опис, як саме буде виконуватись анімація:

local tweenInfo = TweenInfo.new( 2, -- Час анімації (в секундах) Enum.EasingStyle.Quad, -- Стиль анімації (наприклад, Quad, Linear, Bounce) Enum.EasingDirection.Out, -- Напрям (In, Out, InOut) 0, -- Повторення false, -- Повернення (reverses) 0 -- Затримка перед початком )

🔹 Крок 3: Описати властивості, які змінюються

Це таблиця з новими значеннями:

local goal = { Position = Vector3.new(0, 10, 0), Transparency = 0.5 }

🔹 Крок 4: Створити Tween

local tween = TweenService:Create(part, tweenInfo, goal)

🔹 Крок 5: Запустити Tween

tween:Play()

🔁 Приклад повного скрипту:

local TweenService = game:GetService("TweenService") local part = workspace.Part local tweenInfo = TweenInfo.new(2, Enum.EasingStyle.Bounce, Enum.EasingDirection.Out) local goal = { Position = Vector3.new(0, 20, 0), Transparency = 0.3 } local tween = TweenService:Create(part, tweenInfo, goal) tween:Play()

❗ Важливі моменти:

  • Не всі властивості можна анімувати (наприклад, Anchored або Name не підходять).

  • Tween не зупиняє фізику, тому краще використовувати Anchored = true, якщо не хочеш, щоб частина падала.

  • Tween.Completed:Connect(function() ... end) — дозволяє виконати код після завершення анімації.