경험에서는 원인과 결과의 관계가 자주 발생합니다. 예를 들어:
- 플레이어가 10점을 획득하면, 그들은 게임에서 승리합니다.
- 플레이어가 파워업을 가지고 있으면, 그들은 매우 빠르게 달릴 수 있습니다.
- 플레이어가 채팅에 "생일 축하해!"라고 말하면, 축제가 열립니다.
스크립트는 이러한 유형의 상황을 처리하기 위해 조건문을 사용합니다. 조건문은 특정 조건이 참일 때만 실행되는 코드의 줄입니다. 조건문의 한 종류는 if/then 문입니다. Luau에서 if 문의 구문 패턴은 다음과 같습니다:
if then 구문if "무언가가 발생한다" then-- 다른 것이 발생하게 하다end
조건문을 사용하는 코드 조각은 제어 구조입니다. 제어 구조는 코드 형식의 흐름도와 같으며 여러 개의 조건문을 가질 수 있습니다.
if 문 연습
이 단계에서는 조건이 참일 경우 부품의 색상을 변경하는 스크립트를 만드는 방법을 보여줍니다.
ServerScriptService에서 새 스크립트를 만들고 이름을 TruthChecker로 지정합니다. 스크립트에 적절한 주석을 추가하세요.
-- 조건이 참일 경우 부품을 변경합니다."LieDetector"라는 이름의 새 부품을 만듭니다.
if 문 형식
조건은 다양한 형태로 나타날 수 있지만 종종 수학 방정식과 같은 간단한 문장입니다. 예를 들어, 1+1이 2와 같다면, 일부 코드를 실행하세요. 일반적인 수학 방정식처럼, 조건문은 연산자를 사용하여 문장을 평가할 수 있습니다.
특히 주의해야 할 연산자는 ==입니다. 이것은 "같다"는 의미입니다. 따라서 2 + 2 == 4라는 문장은 "이탈곱에 두 개가 사라지는 결과는 4"라고 읽을 수 있습니다. =와 혼동하지 않도록 주의하세요. =는 변수와 같은 객체에 새로운 값을 할당합니다.
빈 조건을 설정합니다. 스크립트에서 if then을 입력하고 Enter를 눌러 조건을 자동 완성합니다. 키워드 then은 코드가 완전하지 않기 때문에 밑줄이 그어집니다.
if then-- 빈 코드endif 키워드 뒤에 3 + 3 == 6과 같은 참인 문장을 입력합니다.
if 3 + 3 == 6 then-- 빈 코드end조건문 내에서 "LieDetector"라는 이름의 부품을 참조하고 부품의 Color 속성을 초록색으로 변경합니다.
if 3 + 3 == 6 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)end코드를 테스트하세요. 3 더하기 3이 6과 같으면, 부품이 초록색으로 바뀝니다.
잘못된 조건 확인하기
이제 고의로 문장을 변경하여 수학 방정식이 거짓일 때 어떤 일이 발생하는지 확인해 보세요.
if 문에서 방정식을 3 + 3 >= 10과 같이 부정확한 것으로 변경합니다.
if 3 + 3 >= 10 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)end이제 코드를 테스트하세요. 부품은 거짓인 문장에 대해 초록색으로 변하지 않아야 합니다.
수학 연산자
아래 표에는 일반적인 Luau 연산자가 나열되어 있습니다. 연산자에 대한 자세한 정보는 Luau Operators에서 확인할 수 있습니다.
| 기호 | 의미 |
|---|---|
| + | 덧셈 |
| - | 뺄셈 |
| * | 곱셈 |
| / | 나눗셈 |
비교 연산자
- == : 같다.
- ~= : 같지 않다.
- < 또는 > 는 각각 작거나 크다의 용도로 사용됩니다.
- <= 또는 >=는 각각 작거나 같고, 크거나 같은 용도로 사용됩니다.
변수와 속성
조건문은 속성과 변수의 상태를 평가하는 데에도 사용됩니다. 다음 단계에서는 변수가 값을 성공적으로 할당받았는지 확인합니다.
모든 코드를 삭제하고 아래의 코드 조각을 스크립트에 복사합니다. 이를 테스트하면 새 오류가 Output에 나타납니다.
local mysteryPart = workspace.MysteryPart-- MysteryPart가 성공적으로 할당되면 참으로 평가됩니다.if mysteryPart thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)end"MysteryPart"라는 이름의 새 부품을 작업 영역에 추가합니다. 다시 테스트하면 "LieDetector"가 초록색으로 변해야 합니다.
조건문을 사용하여 속성이 어떻게 평가될 수 있는지 탐색합니다. "MysteryPart"를 유지한 후 코드를 삭제하고 아래 코드를 복사합니다.
local mysteryPart = workspace.MysteryPart-- MysteryPart가 완전히 불투명할 경우 참으로 평가됩니다.if mysteryPart.Transparency == 0 thenworkspace.LieDetector.Color = Color3.fromRGB(0, 255, 0)mysteryPart.Transparency = .2end코드를 테스트하고, "MysteryPart"의 기본 투명도가 0이면, 그것은 유령처럼 변하고 "LieDetector"는 초록색으로 바뀝니다.
요약
조건문은 문장이 정확한지 확인하고, 그렇다면 일부 코드를 실행합니다. if 문은 매우 일반적인 타입의 조건문입니다. "이것이 참이면, 저것을 하세요"는 패턴을 사용합니다.
조건문을 사용하는 코드 조각은 제어 구조로 불립니다. 제어 구조는 여러 개의 조건문을 담을 수 있습니다.
단순한 수학 문장이 사실인지 평가하는 것 외에도, 조건문은 변수와 속성의 상태를 확인하는 데에도 사용됩니다.