icon

Interstitial Advertising

(Реклама в середине игры)

Обратите внимание на параметр Pause Game в настройках плагина → Basic Settings
При просмотре рекламы и при других ситуациях когда это необходимо — игра будет ставиться на паузу. Пауза контролирует глобальные параметры Time.timeScale, AudioListener.pause, Cursor.visible и Cursor.lockState, а также отключает EventSystem, потому что иногда с ним есть проблемы.
Вы можете контролировать данные параметры в своём коде хоть до паузы, хоть во время неё. После паузы параметры будут установлены на те значения, что в вашем коде.
Если всё же возникают трудности при использовании автоматической паузы, то есть ивент:
YG2.onPauseGame (тип Action<bool>)
Опции рекламы можно найти в настройках плагина → Interstitial Adv.
По умолчанию есть интервал между показом рекламы в 60 секунд контролируемый PluginYG2. Его можно отключить установив параметр Inter Adv Interval в 0. В таком случае в билде вызов рекламы будет при каждом выполнении соответствующего метода. Но для Unity Editor есть отдельная настройка интервала в настройках плагина → General Simulation. Разделение на две опции сделано для удобства тестирования рекламы в проекте. Для тестирования в Unity Editor плагин имеет симуляцию показа рекламы.

Работа с кодом

Метод вызова рекламы:
InterstitialAdvShow

Пример использования метода:

using YG; // Подключите пространство имён плагина

public class MyClass
{
    public void MyMethod()
    {
        YG2.InterstitialAdvShow();
    }
}

 Всё что ниже — второстепенно 

События:
onOpenInterAdv — открытие рекламы.
onOpenInterAdvWasShow — открытие рекламы, возвращает bool была ли показана реклама.
onOpenAnyAdv — открытие любой рекламы (interstitial или rewarded).
onCloseInterAdv — закрытие рекламы.
onCloseAnyAdv — закрытие любой рекламы (interstitial или rewarded).
onErrorInterAdv — ошибка при открытии рекламы.
onAdvNotification — вызывается перед открытием любой рекламы.
onPauseGame — пауза игры. Возвращает bool.

Информативные поля:
nowInterAdv — открыта ли сейчас реклама.
nowAdsShow — открыта ли сейчас любая реклама (interstitial или rewarded).
isTimerAdvCompleted — сколько осталось до конца таймера интервала между показами рекламы.

Специфические методы для разных платформ:
YG2.SkipNextInterAdCall(); — пропустить следующий показ рекламы
YG2.optionalPlatform.FirstInterAdvShow(); — первый показ рекламы. Для Yandex Games в любом случае покажет рекламу. Для Crazy Games пропустит первый показ рекламы, затем, даже после перезагрузки страницы реклама сразу будет вызывать с данным методом.
YG2.optionalPlatform.OtherInterAdvShow(); — специальная реализация под отдельные платформы. Для Yandex Games в любом случае покажет рекламу. Для Crazy Games не будет показывать рекламу.

Реклама в процессе игры

(Таймер перед рекламой)
Готовое решение для рекламы в процессе игры. Он вызывает рекламу тогда, когда заканчивается интервал между рекламой. Перед показом рекламы идёт остановка игры пока не пройдёт таймер (рекомендуется 2 сек.). Скрипт гибко настраивается.

Для рекламы в середине игры воспользуйтесь префабом Timer Before Ads. Его можно найти: PluginYourGames/Modules/InterAdv/Prefabs/Timer Before Ads.
Для корректной работы скрипта необходимо включить опцию Postpone Call By Fail в настройках модуля рекламы.

При использовании префабов PluginYG рекомендуется создавть свой префаб вариант для избежания проблем при обновлении плагина.
Что такое префаб вариант?

Поместите префаб (префаб вариант) на сцену, в которой хотите показывать рекламу в процессе игры. Настройте внешний вид UI элемент под стиль вашей игры.

Нотификация перед рекламой

В некоторых случаях нужно скрыть экран игры и поставить паузу, пока реклама загружается. В этом может помочь скрипт Ad Notification YG и префаб Ad Notification. Поместите префаб (префаб вариант) на сцену, которая загружается первой в проекте. Можете отредактировать цвет «заглушки».
Для корректной работы скрипта необходимо включить опцию Postpone Call By Fail в настройках модуля рекламы.