Содержание
Rewarded Advertising
Метод вызова рекламы за вознаграждение:
RewardedAdvShow
— имеет две перегрузки: (Первая — id вознаграждения типа string), (Вторая — необязательный callback типа Action).
Событие для вознаграждения:
onRewardAdv
— возвращает id вознаграждения.
Пример использования рекламы за вознаграждение с коллбэком:
using UnityEngine;
using YG;
public class MyClass : MonoBehaviour
{
public string rewardID;
public int coins;
// Вызов рекламы за вознаграждение
public void MyRewardAdvShow()
{
YG2.RewardedAdvShow(rewardID, () =>
{
// Получение вознаграждения
coins++;
// По желанию, воспользуйтесь ID вознаграждения
if (rewardID == "AddCoin")
coins++;
});
}
}
public void ShowAdvReward()
{
string id = "coin"; // Передача id требуется для внутренней работы плагина
YG2.RewardedAdvShow(id, Reward);
}
public void Reward()
{
// Выдаём вознаграждение
}
using UnityEngine;
using YG;
public class MyClass : MonoBehaviour
{
public string rewardID;
public int coins;
// Когда объект с данным классом станет активным, метод OnReward подпишится на событие вознаграждения
private void OnEnable()
{
YG2.onRewardAdv += OnReward;
}
// Необходимо отписывать методы от событий при деактивации объекта
private void OnDisable()
{
YG2.onRewardAdv -= OnReward;
}
// Вызов рекламы за вознаграждение
public void MyRewardAdvShow(string id)
{
YG2.RewardedAdvShow(rewardID);
}
// Метод подписан на событие OnReward (ивент вознаграждения)
private void OnReward(string id)
{
// Проверяем ID вознаграждения. Если совпадает с тем ID, с которым вызывали рекламу, то вознаграждаем.
if (id == rewardID)
{
// Получение вознаграждения
coins++;
}
}
}
Всё что ниже — второстепенно
Другие объекты
События:
onOpenRewardedAdv
— открытие рекламы за вознаграждение.
onOpenAnyAdv
— открытие любой рекламы (interstitial или rewarded).
onCloseRewardedAdv
— закрытие рекламы за вознаграждение.
onCloseAnyAdv
— закрытие любой рекламы (interstitial или rewarded).
onErrorRewardedAdv
— ошибка при открытии рекламы за вознаграждение.
onAdvNotification
— вызывается перед открытием любой рекламы.
onPauseGame
— пауза игры. Возвращает bool.
Информативные поля:
nowRewardAdv
— открыта ли сейчас реклама за вознаграждение.
nowAdsShow
— открыта ли сейчас любая реклама (interstitial или rewarded).
Специфический метод для разных платформ:
YG2.optionalPlatform.LoadRewardedAdv();
— предзагрузка рекламы за вознаграждение.
YG2.SkipNextInterAdCall();
— пропустить следующий показ межстраничной рекламы.
Таймер после вознаграждения
В некоторыйх платформах вроде Crazy Games после вознаграждения требуется устанвить таймер с временной блокировкой просмотра новой рекламы за вознаграждение.
Для этого был создан готовый скрипт Rewarded Adv Lock Timer с префабом Lock Timer. Его можно найти в папке Prefabs внутри модуля. Пример использования данного префаба есть в демо сцене PluginYourGames/Modules/RewardedAdv/Example/Scenes/RewardedAdv.