Exemplo n.º 1
0
        /// <summary>
        /// マップエディタを開く(実際にチップを置いていくウィンドウ)
        /// </summary>
        /// <param name="_editor"></param>
        /// <returns></returns>
        public static MapCreater WillApper(MapEditor _editor)
        {
            MapCreater creater = (MapCreater)GetWindow(typeof(MapCreater));

            creater.Show();
            creater.minSize = new Vector2(WINDOW_W, WINDOW_H);
            creater.SetEditor(_editor);
            creater.Init();

            return(creater);
        }
Exemplo n.º 2
0
        /// <summary>
        /// マップエディタを開くボタンを作る
        /// </summary>
        void OpenMapWindowButton()
        {
            EditorGUILayout.BeginVertical();
            GUILayout.FlexibleSpace();

            if (GUILayout.Button("マップエディタ画面を開く"))
            {
                mapCreater = MapCreater.WillApper(this);
            }
            else
            {
                mapCreater.Focus();
            }

            EditorGUILayout.EndVertical();
        }
Exemplo n.º 3
0
        void OnGUI()
        {
            EditorGUILayout.LabelField("スゴロク用マップツール");
            EditorGUILayout.Space();
            EditorGUILayout.LabelField("新規で作りたい場合は再読み込みデータには何も入れないでね");


            if (mapCreater == null)
            {
                mapCreater = new MapCreater();
            }

            // エディタ基本情報
            GUILayout.BeginVertical();
            {
                // データの再読み込み
                GUILayout.BeginHorizontal();
                {
                    GUILayout.Label("再読み込みデータ ", GUILayout.Width(130));
                    LoadSquareData = EditorGUILayout.ObjectField(LoadSquareData, typeof(Object), true);

                    if (LoadSquareData != null)
                    {
                        // パス取得、データ読み込み
                        string squareDataPath = AssetDatabase.GetAssetPath(LoadSquareData);
                        SquareData = AssetDatabase.LoadAssetAtPath(squareDataPath, typeof(ScriptableObject)) as SquareDataSerialize;
                    }

                    GUILayout.EndHorizontal();
                    EditorGUILayout.Space();
                }

                // エディタで使う画像あれこれ
                GUILayout.BeginHorizontal();
                {
                    GUILayout.Label("画像読み込みフォルダ ", GUILayout.Width(130));
                    // 任意のオブジェクトの Type を表示するフィールドを作成
                    //オブジェクトをドラッグアンドドロップするか Object Picker を使用してオブジェクトを選択するかのいずれかでオブジェクトを割り当てる
                    inputDirectory = EditorGUILayout.ObjectField(inputDirectory, typeof(Object), true);
                    GUILayout.EndHorizontal();
                    EditorGUILayout.Space();
                }

                // マップ全体の大きさ
                GUILayout.BeginHorizontal();
                {
                    GUILayout.Label("マップの大きさ ", GUILayout.Width(130));
                    if (LoadSquareData == null)
                    {
                        MapSize = EditorGUILayout.IntField(MapSize);
                    }
                    else
                    {
                        MapSize = EditorGUILayout.IntField(SquareData.Map.Count);
                    }
                    GUILayout.EndHorizontal();
                    EditorGUILayout.Space();
                }

                // グリッドの大きさ
                GUILayout.BeginHorizontal();
                {
                    GUILayout.Label("マス目の大きさ ", GUILayout.Width(130));
                    GridSize = EditorGUILayout.FloatField(GridSize);
                    GUILayout.EndHorizontal();
                    EditorGUILayout.Space();
                }

                // 出力したデータを保存するフォルダ
                GUILayout.BeginHorizontal();
                {
                    GUILayout.Label("保存するフォルダ ", GUILayout.Width(130));
                    outputDirectory = EditorGUILayout.ObjectField(outputDirectory, typeof(Object), true);
                    GUILayout.EndHorizontal();
                    EditorGUILayout.Space();
                }

                // データの名前
                GUILayout.BeginHorizontal();
                {
                    GUILayout.Label("ファイルネーム ", GUILayout.Width(130));
                    outputFileName = EditorGUILayout.TextField(outputFileName);
                    GUILayout.EndHorizontal();
                    EditorGUILayout.Space();
                }



                GUILayout.EndHorizontal();
            }



            DrawImages();
            DisplaySelectedImage();
            OpenMapWindowButton();
        }