예제 #1
0
            private PropertyInfo LoadProps(string name = null)
            {
                var playFabSettingsType = PlayFabEditorSDKTools.GetPlayFabSettings();

                if (playFabSettingsType == null)
                {
                    return(null);
                }

                if (string.IsNullOrEmpty(name))
                {
                    for (var i = 0; i < expectedProps.Length; i++)
                    {
                        LoadProps(expectedProps[i]);
                    }
                    return(null);
                }
                else
                {
                    var eachProperty = playFabSettingsType.GetProperty(name, BindingFlags.IgnoreCase | BindingFlags.Public | BindingFlags.Static);
                    if (eachProperty != null)
                    {
                        _settingProps[name.ToLowerInvariant()] = eachProperty;
                    }
                    return(eachProperty);
                }
            }
        private static void UpdateScriptableObject()
        {
            var playfabSettingsType = PlayFabEditorSDKTools.GetPlayFabSettings();

            if (playfabSettingsType == null || !PlayFabEditorSDKTools.IsInstalled || !PlayFabEditorSDKTools.isSdkSupported)
            {
                return;
            }

            var props = playfabSettingsType.GetProperties();

            foreach (var property in props)
            {
                switch (property.Name.ToLowerInvariant())
                {
                case "productionenvironmenturl":
                    property.SetValue(null, PlayFabEditorHelper.TITLE_ENDPOINT, null); break;
                }
            }

            var getSoMethod = playfabSettingsType.GetMethod("GetSharedSettingsObjectPrivate", BindingFlags.NonPublic | BindingFlags.Static);

            if (getSoMethod != null)
            {
                var so = getSoMethod.Invoke(null, new object[0]) as ScriptableObject;
                if (so != null)
                {
                    EditorUtility.SetDirty(so);
                }
            }
            AssetDatabase.SaveAssets();
        }
        private void OnGuiAuthenticated()
        {
            GUI.skin    = PlayFabEditorHelper.uiStyle;
            GUI.enabled = blockingRequests.Count == 0 && !EditorApplication.isCompiling;
            using (new UnityVertical())
            {
                //PlayFabEditorMenu.DrawMenu();

                switch ((Menu.MenuStates)PlayFabEditorPrefsSO.Instance.curMainMenuIdx)
                {
                case Menu.MenuStates.Sdk:
                    PlayFabEditorSDKTools.DrawSdkPanel();
                    break;

                case Menu.MenuStates.Settings:
                    PlayFabEditorSettings.DrawSettingsPanel();
                    break;

                case Menu.MenuStates.Help:
                    PlayFabEditorHelpMenu.DrawHelpPanel();
                    break;

                case Menu.MenuStates.Data:
                    PlayFabEditorDataMenu.DrawDataPanel();
                    break;

                case Menu.MenuStates.Tools:
                    PlayFabEditorToolsMenu.DrawToolsPanel();
                    break;

                case Menu.MenuStates.Packages:
                    PlayFabEditorPackages.DrawPackagesMenu();
                    break;

                default:
                    break;
                }

                using (new UnityVertical(PlayFabEditorHelper.uiStyle.GetStyle("gpStyleGray1"), GUILayout.ExpandHeight(true), GUILayout.ExpandWidth(true)))
                {
                    GUILayout.FlexibleSpace();
                }

                // help tag at the bottom of the help menu.
                if ((Menu.MenuStates)PlayFabEditorPrefsSO.Instance.curMainMenuIdx == Menu.MenuStates.Help)
                {
                    DisplayHelpMenu();
                }
            }

            Repaint();
        }
            public PlayFab_SharedSettingsProxy()
            {
                var playFabSettingsType = PlayFabEditorSDKTools.GetPlayFabSettings();

                if (playFabSettingsType == null)
                {
                    return;
                }

                var settingProperties = playFabSettingsType.GetProperties();

                foreach (var eachProperty in settingProperties)
                {
                    var lcName = eachProperty.Name.ToLowerInvariant();
                    switch (lcName)
                    {
                    case "titleid":
                        _titleId = eachProperty; break;

                    case "developersecretkey":
                        _developerSecretKey = eachProperty; break;

                    case "requesttype":
                        _webRequestType = eachProperty; break;

                    case "compressapidata":
                        _compressApiData = eachProperty; break;

                    case "requestkeepalive":
                        _keepAlive = eachProperty; break;

                    case "requesttimeout":
                        _timeOut = eachProperty; break;
                    }
                }
            }
예제 #5
0
        private void OnGuiInternal()
        {
            GUI.skin = PlayFabEditorHelper.uiStyle;

            using (new UnityVertical())
            {
                //Run all updaters prior to drawing;
                PlayFabEditorHeader.DrawHeader();

                GUI.enabled = blockingRequests.Count == 0 && !EditorApplication.isCompiling;

                if (PlayFabEditorAuthenticate.IsAuthenticated())
                {
                    PlayFabEditorMenu.DrawMenu();

                    switch (PlayFabEditorMenu._menuState)
                    {
                    case PlayFabEditorMenu.MenuStates.Sdks:
                        PlayFabEditorSDKTools.DrawSdkPanel();
                        break;

                    case PlayFabEditorMenu.MenuStates.Settings:
                        PlayFabEditorSettings.DrawSettingsPanel();
                        break;

                    case PlayFabEditorMenu.MenuStates.Help:
                        PlayFabEditorHelpMenu.DrawHelpPanel();
                        break;

                    case PlayFabEditorMenu.MenuStates.Data:
                        PlayFabEditorDataMenu.DrawDataPanel();
                        break;

                    case PlayFabEditorMenu.MenuStates.Tools:
                        PlayFabEditorToolsMenu.DrawToolsPanel();
                        break;

                    case PlayFabEditorMenu.MenuStates.Packages:
                        PlayFabEditorPackages.DrawPackagesMenu();
                        break;

                    default:
                        break;
                    }
                }
                else
                {
                    PlayFabEditorAuthenticate.DrawAuthPanels();
                }

                using (new UnityVertical(PlayFabEditorHelper.uiStyle.GetStyle("gpStyleGray1"), GUILayout.ExpandHeight(true), GUILayout.ExpandWidth(true)))
                {
                    GUILayout.FlexibleSpace();
                }

                // help tag at the bottom of the help menu.
                if (PlayFabEditorMenu._menuState == PlayFabEditorMenu.MenuStates.Help)
                {
                    DisplayHelpMenu();
                }
            }

            PruneBlockingRequests();

            Repaint();
        }