Menu
CoddyTech

Znikający most

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

Migające światło zmieniło jeden element. Most ma wiele stopni i wszystkie muszą zmieniać się razem.

GetChildren() zwraca bezpośrednie elementy podrzędne obiektu jako tablicę, gotową do użycia w pętli for. Funkcje należące do obiektu, takie jak GetChildren, wywołuje się za pomocą dwukropka:

for _, child in workspace.Bridge:GetChildren() do
	print(child.Name)
end

Folder może zawierać także twój Script, a Script nie ma właściwości Transparency. child:IsA("BasePart") zwraca true dla każdego rodzaju elementu, a false dla obiektu Script. if condition then ... end uruchamia zawarte w nim wiersze tylko wtedy, gdy warunek jest prawdziwy:

if child:IsA("BasePart") then
	child.Transparency = 0.8
end

Element, przez który widać, nadal może być solidny: to CanCollide = false pozwala graczom przez niego spadać.

challenge icon

Wyzwanie

Łatwy

Most ma cztery stopnie nad przepaścią, a ten skrypt znajduje się w folderze mostu. Powoduje, że stopnie znikają tylko raz. Spraw, by most cyklicznie działał bez końca:

  • 2 sekundy po rozpoczęciu stopnie znikają: Transparency 0.8, CanCollide false
  • 2 sekundy później wracają: Transparency 0, CanCollide true
  • powtarza się to co 4 sekundy, bez końca

Naciśnij Play i wyczuj moment, by przebiec na drugą stronę, a następnie naciśnij Check.

Spróbuj swoich sił

local bridge = script.Parent

-- To sprawia, że stopnie znikają TYLKO RAZ, po 2 sekundach.
-- Spraw, by pojawiły się ponownie 2 sekundy później, i powtarzaj to bez końca.
task.wait(2)
for _, step in bridge:GetChildren() do
	if step:IsA("BasePart") then
		step.Transparency = 0.8
		step.CanCollide = false
	end
end
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