예제 #1
0
        public static void AddImageNumber()
        {
            GameObject tGameObject = Selection.activeGameObject;

            if (tGameObject == null)
            {
                return;
            }

            if (WillLosePrefab(tGameObject) == false)
            {
                return;
            }

            Undo.RecordObject(tGameObject, "Add a child UI ImageNumber");                       // アンドウバッファに登録

            GameObject tChild = new GameObject(GetName <UIImageNumber>(), typeof(RectTransform));

            Transform tTransform = tChild.transform;

            tTransform.SetParent(tGameObject.transform, false);
            tTransform.localPosition = Vector3.zero;
            tTransform.localRotation = Quaternion.identity;
            tTransform.localScale    = Vector3.one;

            UIImageNumber tNumber = tChild.AddComponent <UIImageNumber>();

            tNumber.SetDefault();

            Selection.activeGameObject = tChild;

            UnityEditor.SceneManagement.EditorSceneManager.MarkSceneDirty(UnityEditor.SceneManagement.EditorSceneManager.GetActiveScene());
        }
예제 #2
0
        /// <summary>
        /// スンスペクター描画
        /// </summary>
        override protected void DrawInspectorGUI()
        {
            // ターゲットのインスタンス
            UIImageNumber tTarget = target as UIImageNumber;

            EditorGUILayout.Separator();                // 少し区切りスペース

            //-------------------------------------------------------------------

            // マテリアル選択
            DrawMaterial(tTarget);

            //-------------------------------------------------------------------

            EditorGUILayout.Separator();                // 少し区切りスペース

            // 表示する値
            GUI.backgroundColor = new Color(0.0f, 1.0f, 1.0f, 1.0f);                    // GUIの下地を灰にする
            int tValue = EditorGUILayout.IntField("Value", tTarget.value, GUILayout.Width(200f));

            GUI.backgroundColor = Color.white;
            if (tValue != tTarget.value)
            {
                // 変化があった場合のみ処理する
                Undo.RecordObject(tTarget, "ImageNumber : Value Change");                       // アンドウバッファに登録
                tTarget.value = tValue;
                EditorUtility.SetDirty(tTarget);
//				UnityEditor.SceneManagement.EditorSceneManager.MarkSceneDirty( UnityEditor.SceneManagement.EditorSceneManager.GetActiveScene() ) ;
            }

            EditorGUILayout.Separator();                // 少し区切りスペース

            bool tAutoSizeFitting = EditorGUILayout.Toggle("Auto Size Fitting", tTarget.autoSizeFitting);

            if (tAutoSizeFitting != tTarget.autoSizeFitting)
            {
                Undo.RecordObject(tTarget, "UIImageNumber : Auto Size Fitting Change");                         // アンドウバッファに登録
                tTarget.autoSizeFitting = tAutoSizeFitting;
                EditorUtility.SetDirty(tTarget);
                UnityEditor.SceneManagement.EditorSceneManager.MarkSceneDirty(UnityEditor.SceneManagement.EditorSceneManager.GetActiveScene());
            }
        }