icon

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.

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