Exemple #1
0
        public CanvasStock(EventSystemObject eso, CanvasObject dc, CanvasObject sc, List <CanvasObject> oc)
        {
            _eventSystem   = eso;
            _dynamicCanvas = dc;
            _staticCanvas  = sc;

            _otherCanvas = oc;
        }
Exemple #2
0
        public CanvasStock(EventSystemObject eso, CanvasObject dc, CanvasObject sc, int capacity)
        {
            _eventSystem   = eso;
            _dynamicCanvas = dc;
            _staticCanvas  = sc;

            _otherCanvas = new List <CanvasObject>(capacity);
        }
Exemple #3
0
        public static EventSystemObject CreateEventSystem()
        {
            var go = new GameObject();

            go.transform.name = "EventSystem";
            var es  = go.AddComponent <EventSystem>();
            var sim = go.AddComponent <StandaloneInputModule>();
            var eso = new EventSystemObject(es, sim);

            return(eso);
        }
Exemple #4
0
        private void Awake()
        {
            DontDestroyOnLoad(gameObject);
            //名前の設定
            gameObject.name = "UI_Kit";

            //Creator初期化
            Creator.Init();

            var go = GameObject.Find("EventSystem");
            var es = go != null?go.GetComponent <EventSystem>() : null;

            var eventSystemObject = new EventSystemObject(es, null);

            //EventStyleがないなら
            if (eventSystemObject.EventSystem == null)
            {
                //EventSystem初期化
                eventSystemObject.Init();
            }
            else
            {
                eventSystemObject.StandaloneInputModule = go.GetComponent <StandaloneInputModule>();
            }

            //Canvas
            CanvasObject useDynamicCanvas = default;
            CanvasObject useStaticCanvas  = default;
            //オリジナルCanvas
            var useOtherCanvas = new List <CanvasObject>(otherCanvas.Count);

            //Canvas初期化
            //作成済みのDynamicCanvasを使う場合
            if (useCreatedDynamicCanvas && (setOrCreateCanvas == SetOrCreateCanvasType.Dynamic || setOrCreateCanvas == SetOrCreateCanvasType.Both))
            {
                useDynamicCanvas = CanvasObjectInit(this.dynamicCanvas);
            }
            else if (setOrCreateCanvas == SetOrCreateCanvasType.Dynamic || setOrCreateCanvas == SetOrCreateCanvasType.Both)
            {
                useDynamicCanvas = CanvasObjectInit(CanvasType.Dynamic, "Dynamic");
            }

            //作成済みのStaticCanvasを使う場合
            if (useCreatedStaticCanvas && (setOrCreateCanvas == SetOrCreateCanvasType.Static || setOrCreateCanvas == SetOrCreateCanvasType.Both))
            {
                useStaticCanvas = CanvasObjectInit(this.staticCanvas);
            }
            else if (setOrCreateCanvas == SetOrCreateCanvasType.Static || setOrCreateCanvas == SetOrCreateCanvasType.Both)
            {
                useStaticCanvas = CanvasObjectInit(CanvasType.Static, "Static");
            }

            //オリジナルCanvas初期化
            //作成済みのOtherCanvasを使う場合
            if (useCreatedOtherCanvas)
            {
                foreach (var _ in otherCanvas.Select((value, index) => new { Value = value, Index = index }))
                {
                    useOtherCanvas[_.Index] = CanvasObjectInit(_.Value);
                }
            }
            else
            {
                foreach (var _ in otherCanvas.Select((value, index) => new { Value = value, Index = index }))
                {
                    useOtherCanvas[_.Index] = CanvasObjectInit(CanvasType.Dynamic, _.Value.transform.name);
                }
            }
            //Stockに代入
            var canvasStock = new CanvasStock(eventSystemObject, useDynamicCanvas, useStaticCanvas, useOtherCanvas);

            Stock = canvasStock;
        }