Untitled

Untitled

Difficulty UI를 생성한 뒤, 버튼들을 만들어 간단하게 UI를 구성했다.

난이도 별로 Easy = (4 * 2), Normal = (4 * 4), Hard = (4 * 8)로 카드가 구성된다.

Untitled

Untitled

Untitled

처음에는 GameManager를 이용하여 난이도를 설정하려 했다.

StartScene에서 GameManager를 생성한 뒤 **DontDestroyOnLoad**를 한다면 MainScene에서 GameManager의 연결된 오브젝트들이 풀려버리기 때문에 이 방법을 사용할 수 없었다.

그래서 생각한 방법이 DifficultyManager를 싱글톤으로 생성하고 해당 함수에 난이도 정보를 저장한 뒤 **DontDestroyOnLoad**를 하는 방법이었다.

이 방법을 사용하여 기능을 개발하였고 난이도는 enum를 이용하여 가독성을 향상시켰다.

Difficulty Manager 스크립트

using UnityEngine;

public enum Difficulty {Default, Easy, Normal, Hard}

public class DifficultyManager : MonoBehaviour
{
    
    public static DifficultyManager instance;

    // 게임의 난이도
    public Difficulty difficulty;
    
    private void Awake()
    {
        if (instance == null)
        {
            instance = this;
            DontDestroyOnLoad(gameObject); // 씬을 이동해도 AudioManager가 파괴되지않음
        }
        else
        {
            Destroy(gameObject);
        }
    }
}