Menu
CoddyTech

Ruchoma platforma

Część sekcji Skryptowanie gier w Roblox ścieżki Lua w Coddy. Lekcja 21 z 24.

TweenInfo.new przyjmuje więcej argumentów niż tylko czas. Oto ich wartości w kolejności:

  1. czas w sekundach
  2. styl przejścia, taki jak Enum.EasingStyle.Sine: sposób, w jaki zmienia się prędkość podczas ruchu
  3. kierunek przejścia: In, Out lub InOut
  4. liczba powtórzeń: ile dodatkowych razy odtworzyć, -1 oznacza nieskończoną liczbę
  5. odwracanie: true, aby po każdym przebiegu odtwarzać ruch wstecz
  6. opóźnienie: liczba sekund oczekiwania przed rozpoczęciem
local info = TweenInfo.new(1, Enum.EasingStyle.Quad, Enum.EasingDirection.Out, 2, false)

Ten tween odtwarza się 3 razy (raz oraz 2 powtórzenia), każdy przebieg trwa 1 sekundę, a platforma wraca do początku między przebiegami.

Sine z InOut zaczyna powoli, przyspiesza w środku i zwalnia na końcu — tak platforma porusza się w naturalny sposób. Linear utrzymuje stałą prędkość przez cały czas.

Platforma animowana za pomocą tweenu nie przenosi graczy na boki: muszą iść razem z nią.

challenge icon

Wyzwanie

Średni

Niebieska platforma powinna przesuwać się między Z 10 a Z -10 i kontynuować ruch. Skrypt wykonuje tween tylko raz.

Zmień tylko TweenInfo, tak aby platforma:

  • pokonywała drogę w każdą stronę w 3 sekundy, z wygładzaniem Sine InOut
  • wracała po dotarciu do końca
  • nigdy się nie zatrzymywała

Naciśnij Play, aby ją obserwować, a następnie Check.

Spróbuj swoich sił

local TweenService = game:GetService("TweenService")
local platform = script.Parent

-- TweenInfo.new(time, style, direction, repeatCount, reverses)
local info = TweenInfo.new(3, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut)
local goal = { Position = Vector3.new(0, 10, -10) }

local tween = TweenService:Create(platform, info, goal)
tween:Play()
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Skryptowanie gier w Roblox

Poćwicz samodzielnie: Kompilator Lua online