Show ad after certain line of code is called 5 times
Hello I have set up my game to show a unity ad in C# after this line of code is called " if ((StartPage.start != 0) && !PlaneMovement.running) " and I a wondering how to make that happen every 5th time the code is called (aka every time the endGame screen comes up. Note endGame is not a new scene).\ I am VERY new to C# so very detailed instructions are good. Thanks!
using UnityEngine;
using System.Collections;
using UnityEngine.Advertisements;
//GameOver page when the plane is destroyed
public class GameOverPage : MonoBehaviour {
public GUISkin skin; //skin for button styles
public static int start; //static integer indicates to show or hide
bool showAd = true; //Will show ad the first time
public static bool running; //static variable indicates if the plane is destroyed or not
void OnGUI(){
GUI.skin = skin;
//if start is not equal to 0 and running is false then show GameOver page buttons
if ((StartPage.start != 0) && !PlaneMovement.running) {
if(showAd){ //Check if we should show add
if (Advertisement.IsReady ()) {
Advertisement.Show ();
showAd = false; //Set to false So that we dont show ad again
}
}
if (GUI.Button (new Rect (Screen.width / 2.378f, Screen.height / 1.34f, Screen.width / 6f, Screen.height / 10.10f), "", skin.GetStyle ("Restart"))) {
Application.LoadLevel (1);
PlaneMovement.running = true;
}
if (GUI.Button (new Rect (Screen.width / 1.50f, Screen.height / 1.34f, Screen.width / 6.0f, Screen.height / 10.1f), "", skin.GetStyle ("Home"))) {
Application.LoadLevel (0);
PlaneMovement.running = false;
StartPage.start = 0;
}
if (GUI.Button (new Rect (Screen.width / 5.7f, Screen.height / 1.34f, Screen.width / 6f, Screen.height / 10.10f), "", skin.GetStyle ("Website"))) {
Application.OpenURL ("http://www.skyboxertech.weebly.com");
}
}
}
}
Answer by matmel · Mar 19, 2016 at 09:12 PM
Hello! If you want to show an ad every 5th time the endgame screen comes up i would have used PlayerPrefs to count how many times you have died. The PlayerPrefs data will be saved even if you relaunch the game, and can in that way be used as a some sort of save file. I would have done something like this:
void Example()
{
if (PlayerPrefs.HasKey("AdDeathCount"))
{
int count = PlayerPrefs.GetInt("AdDeathCount");
count += 1;
if (count == 5)
{
PlayerPrefs.SetInt("AdDeathCount", 0);
//Display the ad here...
}
}
else
{
PlayerPrefs.SetInt("AdDeathCount", 1);
}
}
Call the example method where you want to call your ads.
Your answer
Follow this Question
Related Questions
problems with mopub 0 Answers
Setting EventTrigger in Unity with JavaScript 0 Answers
GameObject has undefined tag! 0 Answers
I get three errors, no idea why.. 1 Answer
Error CS1519 help 1 Answer