[이븐아이 게임톤] 개발 - 싱글톤 제네릭 구축, 기본 전투UI, 일시정지UI

전투 기획 초안

접기/펼치기

싱글톤 제네릭 업데이트

  • 재생산성을 높이기 위해 제네릭 타입으로 싱글톤 스크립트 작성완료, 게임 매니저에 적용
 using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Singleton<T> : MonoBehaviour where T : Component
{
    static T _inst = null;

    // 제네릭 기반으로 Inst 프로퍼티를 정의
    public static T Inst
    {
        get
        {
            if(_inst == null)
            {
                _inst = FindObjectOfType<T>();
                if(_inst == null)
                {
                    GameObject obj = new GameObject();
                    obj.name = typeof(T).ToString();
                    _inst = obj.AddComponent<T>();
                }
            }
            return _inst;
        }
    }

    protected void Initialize()
    {
        if(_inst == null)
        {
            _inst = this as T;
            DontDestroyOnLoad(gameObject);
        }
        else
        {
            Destroy(this);
        }
    }
}

UI 작업

  • Stage UI
    • CardUI
      • 특정 조건(레벨업)이 되었을 때, CardUI가 오픈되고 게임은 일시 정지된다.
      • 세가지 선택지 중에 하나를 선택하였을 때, 해당 카드의 효과를 스테이지 상에 즉각 업데이트하며(미구현) 게임 플레이가 재개된다.

    • GameSpeedUI
      • 속도 조절 UI
    • PauseUI
      • Home
      • Resume
      • Retry
        • 게임씬을 로드하는 과정에서 Spawner의 참조 중 하나가 풀려 에러가 나는 것으로 보인다 에러 수정 필요

© 2023 Jinsoo Lee. All rights reserved.

Powered by Hydejack v9.1.6