Ponte desaparecendo
Parte da seção Scripts para jogos no Roblox do Journey de Lua da Coddy. Lição 10 de 24.
A luz piscante mudou uma peça. Uma ponte tem muitas etapas, e todas precisam mudar juntas.
GetChildren() retorna os filhos diretos de um objeto como uma tabela, pronta para um loop for. Funções que pertencem a um objeto, como GetChildren, são chamadas com dois-pontos:
for _, child in workspace.Bridge:GetChildren() do
print(child.Name)
endUma pasta também pode conter seu Script, e um Script não tem Transparency. child:IsA("BasePart") é true para todo tipo de peça e false para o Script. if condition then ... end executa as linhas internas somente quando a condição é verdadeira:
if child:IsA("BasePart") then
child.Transparency = 0.8
endUma peça que é transparente ainda pode ser sólida: CanCollide = false é o que permite que os jogadores caiam através dela.
Desafio
FácilA ponte tem quatro degraus sobre o vazio, e este script está na pasta da ponte. Ele faz os degraus desaparecerem uma vez. Faça a ponte alternar para sempre:
- 2 segundos após o início, os degraus desaparecem:
Transparency0.8,CanCollidefalse - 2 segundos depois, eles voltam:
Transparency0,CanCollidetrue - isso se repete a cada 4 segundos, para sempre
Pressione Play e cronometre sua travessia, depois Check.
Experimente você mesmo
local bridge = script.Parent
-- Isso faz os degraus desaparecerem UMA VEZ, após 2 segundos.
-- Faça-os reaparecer 2 segundos depois e repita para sempre.
task.wait(2)
for _, step in bridge:GetChildren() do
if step:IsA("BasePart") then
step.Transparency = 0.8
step.CanCollide = false
end
end
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Scripts para jogos no Roblox
2Laços e funções
Fileira de pilaresConstrutor de escadasConstrutor de torresFábrica de moedasLuz piscantePonte desaparecendo5Seu primeiro jogo
Seu primeiro ObbyPratique por conta própria: Compilador de Lua online