예제 #1
0
 public string GetIOSGameId() =>
 AdvertisementSettings.GetGameId(RuntimePlatform.IPhonePlayer);
예제 #2
0
 public void SetAndroidGameId(string value)
 {
     AdvertisementSettings.SetGameId(RuntimePlatform.Android, value);
 }
예제 #3
0
 public string GetAndroidGameId() =>
 AdvertisementSettings.GetGameId(RuntimePlatform.Android);
예제 #4
0
 public void SetIOSGameId(string value)
 {
     AdvertisementSettings.SetGameId(RuntimePlatform.IPhonePlayer, value);
 }
예제 #5
0
 public string GetAndroidGameId()
 {
     return(AdvertisementSettings.GetGameId(RuntimePlatform.Android));
 }
예제 #6
0
 public bool IsAndroidEnabled()
 {
     return(AdvertisementSettings.IsPlatformEnabled(RuntimePlatform.Android));
 }
예제 #7
0
 public void SetAndroidEnabled(bool enabled)
 {
     AdvertisementSettings.SetPlatformEnabled(RuntimePlatform.Android, enabled);
 }
예제 #8
0
 public bool IsIOSEnabled()
 {
     return(AdvertisementSettings.IsPlatformEnabled(RuntimePlatform.IPhonePlayer));
 }
예제 #9
0
 public void SetIOSEnabled(bool enabled)
 {
     AdvertisementSettings.SetPlatformEnabled(RuntimePlatform.IPhonePlayer, enabled);
 }
예제 #10
0
 public string GetAppleTVGameId()
 {
     return(AdvertisementSettings.GetGameId(RuntimePlatform.tvOS));
 }
예제 #11
0
 public void SetAppleTVGameId(string value)
 {
     AdvertisementSettings.SetGameId(RuntimePlatform.tvOS, value);
 }
예제 #12
0
 public void SetGameId(string platformName, string value)
 {
     AdvertisementSettings.SetPlatformGameId(platformName, value);
 }
예제 #13
0
 public string GetGameId(string platformName)
 {
     return(AdvertisementSettings.GetPlatformGameId(platformName));
 }
 private static IEnumerable <PluginDesc> RegisterPlugins(BuildTarget target)
 {
     if (((target == BuildTarget.Android) && AdvertisementSettings.enabled) && AdvertisementSettings.IsPlatformEnabled(RuntimePlatform.Android))
     {
         PluginDesc desc = new PluginDesc {
             pluginPath = Path.Combine(extensionPath, "Editor/Resources/Android/builds/unity-ads.aar")
         };
         return(new PluginDesc[] { desc });
     }
     return(new PluginDesc[0]);
 }
예제 #15
0
 private void SetGameIds(string appleGameId, string androidGameId)
 {
     AdvertisementSettings.SetGameId(RuntimePlatform.IPhonePlayer, appleGameId);
     AdvertisementSettings.SetGameId(RuntimePlatform.Android, androidGameId);
     gameIdsUpdatedEvent?.Invoke();
 }
예제 #16
0
        private static Promise InternalUpdateServerSettings(bool showDialog)
        {
            Deferred       deferred       = new Deferred();
            ServerSettings serverSettings = new ServerSettings();

            serverSettings.ValuesDefenition = InfoResolver.Resolve <FortInfo>().ValueDefenitions;
            serverSettings.InvitationPrize  = InfoResolver.Resolve <FortInfo>().InvitationInfo.InvitationPrize;
            serverSettings.StartupBalance   = InfoResolver.Resolve <FortInfo>().StartupBalance;

            AdvertisementSettings advertisementSettings = new AdvertisementSettings();

            advertisementSettings.VideoPriority = InfoResolver.Resolve <FortInfo>().Advertisement.AdvertisementProviders.Where(
                priority =>
                priority.AdvertisementProvider != null && priority.AdvertisementProvider.IsVideoSupported)
                                                  .Select((priority, i) => new { Priority = priority, Index = i })
                                                  .OrderBy(arg => arg.Priority.VideoPriority < 0 ? arg.Index * 10000 : arg.Priority.VideoPriority)
                                                  .Select(arg => arg.Priority.AdvertisementProvider.Name)
                                                  .ToArray();
            AdvertisementPriority advertisementPriority =
                InfoResolver.Resolve <FortInfo>().Advertisement.AdvertisementProviders.Where(
                    priority =>
                    priority.AdvertisementProvider != null &&
                    priority.AdvertisementProvider.IsStandardBannerSupported)
                .Select((priority, i) => new { Priority = priority, Index = i })
                .OrderBy(
                    arg => arg.Priority.VideoPriority < 0 ? arg.Index * 10000 : arg.Priority.VideoPriority)
                .Select(arg => arg.Priority)
                .FirstOrDefault();

            if (advertisementPriority != null)
            {
                advertisementSettings.StandardBannerPriority = advertisementPriority.AdvertisementProvider.Name;
            }
            else
            {
                advertisementSettings.StandardBannerPriority = string.Empty;
            }
            advertisementPriority =
                InfoResolver.Resolve <FortInfo>().Advertisement.AdvertisementProviders.Where(
                    priority =>
                    priority.AdvertisementProvider != null &&
                    priority.AdvertisementProvider.IsInterstitialBannerSupported)
                .Select((priority, i) => new { Priority = priority, Index = i })
                .OrderBy(
                    arg => arg.Priority.VideoPriority < 0 ? arg.Index * 10000 : arg.Priority.VideoPriority)
                .Select(arg => arg.Priority)
                .FirstOrDefault();
            if (advertisementPriority != null)
            {
                advertisementSettings.InterstiatialBannerPriority = advertisementPriority.AdvertisementProvider.Name;
            }
            else
            {
                advertisementSettings.InterstiatialBannerPriority = string.Empty;
            }
            serverSettings.AdvertisementSettings = advertisementSettings;
            EditorUtility.DisplayProgressBar("Syncronizing Server settings", "Syncronizing Server settings", 0);
            InfoResolver.Resolve <FortInfo>()
            .ServerConnectionProvider.EditorConnection.Call <object>("UpdateSettings",
                                                                     new UpdateServerSettingRequest {
                ServerSettings = serverSettings
            })
            .Then(
                o =>
            {
                EditorUtility.ClearProgressBar();
                if (showDialog)
                {
                    EditorUtility.DisplayDialog("Syncronizing Server settings", "Server settings syncronization succeeded",
                                                "Ok");
                }
                deferred.Resolve();
            }, error =>
            {
                EditorUtility.ClearProgressBar();
                deferred.Reject();
                throw new Exception("Server settings syncronization failed");
            });
            return(deferred.Promise());
        }