W Wprowadzeniu do Roblox Studio nauczyłeś się, jak tworzyć i manipulować częściami w Roblox Studio. W tym samouczku nauczysz się, jak zastosować skrypt do części, aby platforma pojawiała się i znikała. Możesz to wykorzystać w grze platformowej, aby pokonać lukę, wyzywając użytkowników do starannego wymierzania skoków, aby dotrzeć na drugą stronę.
Ustaw scenę
Na początek potrzebujesz Części, która będzie działać jako platforma. Tworzenie i przesuwanie części powinno być ci znane z Wprowadzenia do Roblox Studio. Nie potrzebujesz skomplikowanego świata poza platformą — wystarczy luka, którą twoi użytkownicy nie mogą łatwo przeskoczyć.
Wstaw Część i zmień jej nazwę na DisappearingPlatform.
Zmień jej rozmiar na wystarczająco duży, aby użytkownik mógł na niej skakać.
Przesuń ją w odpowiednie miejsce, abyś mógł do niej dotrzeć i skoczyć na nią podczas testowania gry.

Ustaw właściwość Anchored na true w oknie Właściwości.

Wstaw skrypt
Kod w Robloxie jest pisany w języku zwanym Luau, który możesz umieścić w skryptach w różnych kontenerach w Eksploratorze. Jeśli umieścisz skrypt pod Częścią, Roblox uruchomi kod skryptu, gdy część zostanie załadowana do gry.
Najedź na część DisappearingPlatform w oknie Eksplorator i kliknij przycisk +, aby wstawić nowy skrypt do platformy. Zmień nazwę nowego skryptu na Disappear.

Usuń domyślny kod wewnątrz.
Pierwsza zmienna
Dobrym pomysłem jest rozpoczęcie skryptu od utworzenia zmiennej dla platformy. Zmienna to nazwa powiązana z wartością. Gdy zmienna zostanie utworzona, można jej używać wielokrotnie. Możesz zmieniać wartość w razie potrzeby.
W Luau zmienną tworzy się w następujący sposób: local variableName = variableValue.
Termin local oznacza, że zmienna będzie używana tylko w bloku skryptu, w którym została zadeklarowana. Znak = służy do ustawienia wartości zmiennej. Nazwy zmiennych zazwyczaj pisze się w camel case. To jest małe litery, a każde słowo po pierwszym jest pisane wielką literą, justLikeThis.
Skopiuj poniższy kod, aby utworzyć zmienną dla platformy o nazwie platform, gdzie wartość to script.Parent.
local platform = script.ParentFunkcja znikania
Czas sprawić, aby platforma zniknęła. Zawsze najlepiej jest grupować kod do osiągnięcia konkretnej akcji w funkcji. Funkcja to nazwana sekcja kodu, która pomaga zorganizować twój kod i używać go w wielu miejscach bez pisania go ponownie. Utwórz funkcję w skrypcie i nazwij ją disappear.
local platform = script.Parent
local function disappear()
endPierwsza nowa linia deklaruje funkcję — wskazuje początek funkcji i nazywa ją disappear. Kod dla funkcji znajduje się między pierwszą linią a end.
Nawiasy służą do dodawania dodatkowych informacji w razie potrzeby. Więcej o przekazywaniu informacji do funkcji dowiesz się w późniejszym kursie.
Właściwości części
Gdy platforma znika, musi być niewidoczna, a użytkownicy muszą przez nią przechodzić — ale nie możesz po prostu zniszczyć platformy, ponieważ musi się później pojawić.
Części mają różne właściwości, które można tutaj wykorzystać. Pamiętaj, że możesz zobaczyć właściwości części, jeśli ją wybierzesz i spojrzysz na okno Właściwości.
Część można uczynić niewidoczną, zmieniając właściwość Transparency. Przezroczystość może mieć wartość od 0 do 1, gdzie 1 to całkowita przezroczystość, a zatem niewidoczność.
Właściwość CanCollide określa, czy inne części (i użytkownicy) mogą przechodzić przez tę część. Jeśli ustawisz ją na false, użytkownicy przejdą przez platformę.
Podobnie jak script.Parent, właściwości są dostępne za pomocą kropki. Wartości przypisuje się za pomocą znaku równości.
W funkcji disappear ustaw właściwość CanCollide platformy na false.
W następnym wierszu ustaw właściwość Transparency na 1.
local platform = script.Parentlocal function disappear()platform.CanCollide = falseplatform.Transparency = 1end
Wywołaj funkcję
Gdy zadeklarujesz funkcję, możesz ją uruchomić, pisząc jej nazwę z nawiasami obok. Na przykład disappear() uruchomi funkcję disappear. To nazywa się wywołaniem funkcji.
Wywołaj funkcję disappear na końcu skryptu.
local platform = script.Parentlocal function disappear()platform.CanCollide = falseplatform.Transparency = 1enddisappear()Rozpocznij testowanie. Jeśli twój kod działa, platforma powinna zniknąć, gdy użytkownik się pojawi.
Funkcja pojawiania się
Możesz łatwo sprawić, aby platforma się pojawiła, pisząc funkcję, która robi dokładnie odwrotność funkcji disappear.
Usuń linię disappear() ze skryptu.
Zadeklaruj nową funkcję o nazwie appear.
W ciele funkcji ustaw właściwość CanCollide na true i właściwość Transparency na 0.
local platform = script.Parentlocal function disappear()platform.CanCollide = falseplatform.Transparency = 1endlocal function appear()platform.CanCollide = trueplatform.Transparency = 0end
Pętla kodu
Platforma powinna ciągle znikać i pojawiać się, z kilkoma sekundami przerwy między każdą zmianą. Niemożliwe jest napisanie nieskończonej liczby wywołań funkcji — na szczęście, dzięki pętli while, nie musisz tego robić.
Pętla while wykonuje kod wewnątrz niej tak długo, jak długo wyrażenie po while pozostaje prawdziwe. Ta konkretna pętla musi działać w nieskończoność, więc wyrażenie powinno być po prostu true. Utwórz pętlę while true na końcu swojego skryptu.
local platform = script.Parent
local function disappear()
platform.CanCollide = false
platform.Transparency = 1
end
local function appear()
platform.CanCollide = true
platform.Transparency = 0
end
while true do
endPrzełącz platformę
W pętli while musisz napisać kod, aby poczekać kilka sekund między znikaniem a pojawianiem się platformy.
Wbudowana funkcja task.wait() może być użyta do tego celu. W nawiasach potrzebna jest liczba sekund do oczekiwania: na przykład task.wait(3).
Trzy sekundy to rozsądny punkt wyjścia dla długości czasu między każdym stanem platformy.
- W pętli while wywołaj funkcję task.wait() z 3 w nawiasach.
- Wywołaj funkcję disappear.
- Ponownie wywołaj funkcję task.wait() z 3 w nawiasach.
- Wywołaj funkcję appear.
while true do
task.wait(3)
disappear()
task.wait(3)
appear()
endKod dla platformy jest teraz kompletny! Przetestuj swój kod teraz, a powinieneś zauważyć, że platforma znika po trzech sekundach i pojawia się trzy sekundy później w pętli.
Możesz skopiować tę platformę, aby pokryć szerszą lukę, ale musisz zmienić czasy oczekiwania w każdym skrypcie. W przeciwnym razie wszystkie platformy znikną w tym samym czasie i użytkownicy nigdy nie będą mogli przejść.
Ostateczny kod
local platform = script.Parent
local function disappear()
platform.CanCollide = false
platform.Transparency = 1
end
local function appear()
platform.CanCollide = true
platform.Transparency = 0
end
while true do
task.wait(3)
disappear()
task.wait(3)
appear()
end