본문 바로가기

게임개발/Roblox

[게임개발] Roblox - 루아(Rua)모르는 사람이 만드는 우당탕탕 로블록스 게임만들기 #8

 

힘든 반복문의 길을 걸어온 당신 축하한다.

이제 당신은 자랑스러운 진짜 Rua청소년이다. 지금까진 가짜 청소년이었다.

아무튼, 오늘은 조건문에 대해 알아볼거다.

자, 가보자고!

 

이미지 출처 - 최고심

 

 

조건문은 사실, 이전 포스팅에서도 사용이 되었다.

특정 조건을 만족하면 아래 코드를 실행하는 조건문은, 실제 코딩을 할 때 매우 많이 사용하는 부분이다.

 

if 조건 then
	실행할 내용
end

 

조건문은 위와 같은 모습을 갖는다.

조건을 만족하면, 중간에 있는 코드를 실행한다. 무척이나 간단하다.

사실 간단한 이유는 위에선 조건이 하나이기 때문이다.

조건이 늘어나면 조오오금 더 복잡해진다.

 

if 조건 then
	실행할 내용1
else
if 조건 then
	실행할 내용2
end

 

쨔쟌. 이런식으로 else와 if문이 한세트씩 더 추가된다고 생각하면 편하다.

만약 세개라면 어떨까

 

if 조건 then
	실행할 내용1
elseif 조건2 then
	실행할 내용 2
else
if 조건3 then
	실행할 내용3
end

 

이런식으로 추가된다. if문이 참이 아니라면 elseif문이 실행된다.

그렇게 elseif문들을 돌다가, 전부 참이 아니라면 마지막 else문이 실행된다.

 

이전 포스팅에선 시간이 변하는 스크립트를 작성했었다.

이번에는 이전 코드를 응용하여 시간에 따라 조명이 켜졌다, 꺼졌다 하는 스크립트를 만들어보고자 한다.

 

이제 익숙하지? 파트와 스크립트를 추가하자.

 

'ShiningPart'라는 파트 하나와, 그 아래에 ShiningScript라는 스크립트를 생성해준다.

 

local timeControl = game.Lighting --변수에 조명 속성 담기
local timeVal = 12 --timeVal변수에 12 담기

local brick = game. Workspace.ShiningPart --brick변수에 ShiningBlock파트 담기

while true do --무한반복
	timeControl.ClockTime=timeVal --현재 시간을 timeVal으로 변경
	print(timeVal) --현재 시간 알기좋게 출력
	wait(2) --2초 대기
	
	if timeVal == 25 then --만약 시간이 25라면
		timeVal = 0 -- 0을 넣는다.
	end
	if timeVal > 18 then -- 만약 시간이 18보다 크다면
		brick.Material = "Neon" --브릭의 성질을 Neon으로
	elseif timeVal < 7 then -- 시간이 7보다 작다면
		brick.Material = "Neon" --그래도 역시 Neon
	else
		brick.Material = "Plastic" --그렇지 않다면 Plastic으로 바꾼다.
	end
	
	timeVal = timeVal + 1 --시간에 1을 더해 시간이 흐름을 표현한다.
end

 

스크립트에는 해당 내용을 적어준다.

 

이렇게 시간에 따라 Neon이 되었다가 Plastic이 되었다가 한다

 

이렇게 된다면 여러분은 If문을 어느정도 사용할 수 있게 된거다.

주석에 최대한 알아보기 쉽게 써놓았지만.. 이해가 힘들다면 언제든지 댓글을 달아주시길 바란다.