사라지는 다리
Coddy Lua 여정의 Roblox 게임 스크립팅 섹션에 포함된 레슨. 24개 중 10번째.
깜박이는 조명은 한 부분만 바꿨습니다. 다리에는 여러 단계가 있고, 모든 단계를 함께 바꿔야 합니다.
GetChildren()은 객체의 직계 자식들을 테이블로 반환하며, 바로 for 루프에 사용할 수 있습니다. GetChildren처럼 객체에 속한 함수는 콜론을 사용해 호출합니다:
for _, child in workspace.Bridge:GetChildren() do
print(child.Name)
end폴더에는 Script도 들어갈 수 있으며, Script에는 Transparency가 없습니다. child:IsA("BasePart")는 모든 종류의 파트에 대해 true이고 Script에 대해서는 false입니다. if condition then ... end는 조건이 참일 때만 내부의 줄을 실행합니다:
if child:IsA("BasePart") then
child.Transparency = 0.8
end투명한 파트도 여전히 단단할 수 있습니다. 플레이어가 통과해 떨어지게 하려면 CanCollide = false로 설정해야 합니다.
챌린지
쉬움다리에는 허공 위에 놓인 계단이 네 개 있고, 이 스크립트는 다리의 폴더에 있습니다. 이 스크립트는 계단을 한 번 사라지게 합니다. 다리가 영원히 반복되도록 만드세요:
- 시작 후 2초가 지나면 계단이 사라집니다:
Transparency0.8,CanCollidefalse - 2초 후 계단이 다시 나타납니다:
Transparency0,CanCollidetrue - 이 과정이 4초마다 영원히 반복됩니다
Play를 눌러 다리를 건너는 데 걸리는 시간을 재고, Check를 누르세요.
직접 해보기
local bridge = script.Parent
-- 이 코드는 2초 후에 발판이 단 한 번 사라지게 합니다.
-- 2초 후에 발판이 다시 나타나게 하고, 이 과정을 무한히 반복하세요.
task.wait(2)
for _, step in bridge:GetChildren() do
if step:IsA("BasePart") then
step.Transparency = 0.8
step.CanCollide = false
end
end
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
Roblox 게임 스크립팅의 모든 레슨
직접 연습해 보세요: 온라인 Lua 컴파일러