Rewarded ad working even when I pause the game
Hi I have interstitial ad attached to my pause button. Whenever I press it the rewarded ad also work for some reason and reward the player. Please help me.
using System.Collections;
using UnityEngine;
using UnityEngine.Advertisements;
public class adScript : MonoBehaviour, IUnityAdsListener
{
public string gameId = "4110451";
string mySurfacingId = "Rewarded_Android";
[SerializeField] private GameObject LoadingUI = null;
public float waitTime = 3f;
public bool testMode = true;
public GameObject dead;
public GameObject player;
public GameObject blue;
void Start()
{
// Initialize the Ads service:
Advertisement.AddListener(this);
Advertisement.Initialize(gameId, testMode);
}
public void ShowInterstitialAd()
{
if (Advertisement.IsReady())
{
Advertisement.Show("Interstitial_Android");
}
else
{
Debug.LogError("Error: Ad was not able to be loaded in " + waitTime + " seconds!");
Debug.Log("Ad didnt loaded");
}
}
//private IEnumerator ShowAd()
//{
// float currentTime = 0.0f;
// LoadingUI.SetActive(true);
// while (currentTime <= waitTime && !Advertisement.IsReady())
// {
// currentTime += Time.unscaledDeltaTime;
// yield return null;
// }
// // show the ad if it is now ready
// if (Advertisement.IsReady())
// {
// Advertisement.Show("Interstitial_Android");
// }
// else
// {
// Debug.LogError("Error: Ad was not able to be loaded in " + waitTime + " seconds!");
// Debug.Log("Ad didnt loaded");
// }
// LoadingUI.SetActive(false);
//}
public void ShowRewardedVideo()
{
// Check if UnityAds ready before calling Show method:
if (Advertisement.IsReady(mySurfacingId))
{
Advertisement.Show(mySurfacingId);
}
else
{
Debug.Log("Rewarded video is not ready at the moment! Please try again later!");
}
}
// Implement IUnityAdsListener interface methods:
public void OnUnityAdsDidFinish(string surfacingId, ShowResult showResult)
{
// Define conditional logic for each ad completion status:
if (showResult == ShowResult.Finished)
{
healthScript.healthValue += 3;
respawn();
player.SetActive(true);
dead.SetActive(false);
}
else if (showResult == ShowResult.Skipped)
{
}
else if (showResult == ShowResult.Failed)
{
}
}
public void OnUnityAdsReady(string surfacingId)
{
// If the ready Ad Unit or legacy Placement is rewarded, show the ad:
if (surfacingId == mySurfacingId)
{
// Optional actions to take when theAd Unit or legacy Placement becomes ready (for example, enable the rewarded ads button)
}
}
public void OnUnityAdsDidError(string message)
{
// Log the error.
}
public void OnUnityAdsDidStart(string surfacingId)
{
// Optional actions to take when the end-users triggers an ad.
}
// When the object that subscribes to ad events is destroyed, remove the listener:
public void OnDestroy()
{
Advertisement.RemoveListener(this);
}
public void respawn()
{
Renderer rend = player.GetComponent<Renderer>();
TrailRenderer rend2 = player.GetComponent<TrailRenderer>();
Collider2D col = player.GetComponent<Collider2D>();
gameObject.transform.position = new Vector3(0, 0, 0);
rend.enabled = true;
rend2.enabled = true;
col.enabled = true;
blue.SetActive(true);
Time.timeScale = 1;
}
}
Comment
Your answer
![](https://koobas.hobune.stream/wayback/20220613034309im_/https://answers.unity.com/themes/thub/images/avi.jpg)
Follow this Question
Related Questions
Intertitial ad not showing in live device (but working while testing it in Unity) 0 Answers
Exception: Field currentActivity or type signature not found 0 Answers
Why does this code keep on repeating ads non stop?? 0 Answers
why chartboost sdk is not integrating to unity? 0 Answers
Error, platform-specific implementation not set // AdColony Unity 0 Answers