public override void CreateVisualStudioSolution()
    {
        string path = Utility.CombinePath(base.InstallPath, base.VisualStudioName + "v11.suo");

        if (File.Exists(path))
        {
            File.Delete(path);
        }
        Dictionary <WSASDK, LibraryCollection> dictionary = this.TEMP_GetLibraryCollections();
        MetroCSharpVisualStudioSolutionCreator creator    = new MetroCSharpVisualStudioSolutionCreator(base.VisualStudioName, base.StagingArea, base.InstallPath, base.PlayerPackage)
        {
            SourceBuild        = base.SourceBuild,
            DontOverwriteFiles = MetroVisualStudioSolutionHelper.GetDontOverwriteFilesCSharp(),
            LibraryCollections = dictionary
        };

        if (base.AutoRunPlayer)
        {
            IEnumerator enumerator = Enum.GetValues(typeof(WSABuildType)).GetEnumerator();
            try
            {
                while (enumerator.MoveNext())
                {
                    object current = enumerator.Current;
                    creator.EnableDotNetNative[(WSABuildType)current] = false;
                }
            }
            finally
            {
                IDisposable disposable = enumerator as IDisposable;
                if (disposable != null)
                {
                    disposable.Dispose();
                }
            }
        }
        else
        {
            IEnumerator enumerator2 = Enum.GetValues(typeof(WSABuildType)).GetEnumerator();
            try
            {
                while (enumerator2.MoveNext())
                {
                    object obj3 = enumerator2.Current;
                    creator.EnableDotNetNative[(WSABuildType)obj3] = EditorUserBuildSettings.GetWSADotNetNative((WSABuildType)obj3);
                }
            }
            finally
            {
                IDisposable disposable2 = enumerator2 as IDisposable;
                if (disposable2 != null)
                {
                    disposable2.Dispose();
                }
            }
        }
        creator.CreateSolutionFileFrom();
        MetroVisualStudioSolutionHelper.WriteUnityCommonProps(Path.Combine(base.InstallPath, "UnityCommon.props"), base.PlayerPackage, base.InstallPath, base.SourceBuild);
        if (!base.SourceBuild)
        {
            this.CopyUnityTools();
        }
    }