示例#1
0
        //------------------------------------------------------
        // file
        //------------------------------------------------------

        bool WriteCode(string code)
        {
            try
            {
                var assetPath = m_settings.GetScriptPath();

                var dir = Path.GetDirectoryName(assetPath);
                if (!Directory.Exists(dir))
                {
                    Directory.CreateDirectory(dir);
                }

                if (File.Exists(assetPath) && File.ReadAllText(assetPath) == code)
                {
                    Debug.Log("SceneMenu generate skipped");
                    return(false);
                }

                File.WriteAllText(assetPath, code);
                Debug.LogFormat("SceneMenu generate [{0}]", assetPath);

                return(true);
            }
            catch (Exception e)
            {
                Debug.LogError(e.Message);
                return(false);
            }
        }
示例#2
0
        //------------------------------------------------------
        // settings
        //------------------------------------------------------

        void Apply()
        {
            if (m_settings.Save())
            {
                if (m_settings.outputDirectoryPath != m_origin.outputDirectoryPath)
                {
                    var filePath = m_origin.GetScriptPath();
                    if (File.Exists(filePath))
                    {
                        File.Delete(filePath);
                    }
                }

                m_origin = new SceneMenuSettings(m_settings);
            }

            SceneMenuUpdater.UpdateSceneMenu();
        }