개발/유니티(UNITY)

2.5 제어문 사용하기

새벽감성개발자 2023. 9. 7. 13:00
반응형

2.5.1 if문으로 조건 분기하기

  • 특정한 조건이 맞을 때만 스크립트를 실행하고 싶다면 if문을 사용
  • if문은 관계연산자를 사용해서 조건식을 사용

※ if 문 사용하기

using System.Collections;
using System.Collections.Generic;
using UnityEngine;                  // 유니티가 동작하는데 필요한 기능 제공


public class test : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        int herbNum = 1;
        if (herbNum == 1) {
            Debug.Log("체력을 50 회복");
        }
    }
}

결과값 보기

더보기

체력을 50 회복

herbNum = 5; 으로 바꾸고 체력이 회복되는지 또는 회복되지 않는지 확인

 

2.5.2 if ~ else 문으로 조건 분기하기

※ if ~ else문 사용하기

using System.Collections;
using System.Collections.Generic;
using UnityEngine;                  // 유니티가 동작하는데 필요한 기능 제공


public class test : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        int hp = 200;
        if (hp >= 100)
        {
            Debug.Log("공격!");
        } else
        {
            Debug.Log("방어!");
        }
    }
}

결과값 보기

더보기

공격!

 

2.5.3 if 문 추가하기

  • 조건이 2개 이상인 경우 if ~ else if  ~ else 문을 사용한다.

※ if ~ else if ~ else 문 사용하기

using System.Collections;
using System.Collections.Generic;
using UnityEngine;                  // 유니티가 동작하는데 필요한 기능 제공


public class test : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        int hp = 180;
        if (hp <= 50)
        {
            Debug.Log("도망!");
        }
        else if (hp >= 200)
        {
            Debug.Log("공격!");
        }
        else
        {
            Debug.Log("방어!");
        }
    }
}

결과값 보기

더보기

방어!

 

2.5.4 변수 범위

※ 변수 범위의 예

using System.Collections;
using System.Collections.Generic;
using UnityEngine;                  // 유니티가 동작하는데 필요한 기능 제공


public class test : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        int x = 1;
        if (x == 1)
        {
            int y = 2;
            Debug.Log(x);
            Debug.Log(y);
        }
        Debug.Log(y);
    }
}

결과값 보기

더보기

if문 밖의 Debug.Log(y);는 오류로 실행되지 않는다.
코드 블럭 안에서 선언된 변수인 y는 블럭 밖으로 나가서 출력하고자 한다면 선언되지 않았기 때문에 오류이다.

밖에서 출력하기를 원한다면, if문 밖에서 변수 y를 선언하고 초기화한다면, if문 밖에 있는 곳에서 y의 값을 출력할 수 있다.

변수명을 만들 때, a, b, x, y 등의 변수명을 선언하기 보다는
playtime, damage, userid 등과 같은 변수명을 사용한다면 코드에서 더 쉽게 확인할 수 있다.

 

반응형

'개발 > 유니티(UNITY)' 카테고리의 다른 글

2.6 배열 사용하기  (0) 2023.09.08
2.5.5 for 문으로 반복하기  (0) 2023.09.07
2.4.2 변수와 연산  (0) 2023.09.07
2.3 스크립트 첫 걸음  (0) 2023.09.06
2 C# 스크립트 기초  (0) 2023.09.06