我是C#的新手,任何人都可以帮我解决这个问题。我在Unity中创建游戏并在Gameover状态下集成了admob(interstitial)。现在它运作良好,但是每次用户到达游戏画面时显示insterstitial广告看起来都很烦人。所以在这里我认为在广告中添加一些延迟时间是件好事。到目前为止,我得到了一些简单的逻辑,但它并没有按照我的需要工作,不确定。
这是我的代码,例如我希望它有2分钟的延迟,所以在gameover它不会执行插页式广告,如果它没有达到延迟时间。柜台应该不断计数。如果计数器达到2分钟以上并显示下一个游戏结果屏幕,则广告应显示,计数器重新开始从零开始计数。
// For timer Admob
public int counter = 0;
public bool timer = true;
void Update()
{
if (timer == true)
{
counter++;
}
}
在我的游戏画面
if (counter >= 120) // delay for 2 minutes
{
<<my custom code to show admob>>
timer = true;
counter = 0;// set the counter to zero and restarting count
}
else
{
timer = true; // it will keep counting
}
真的很赞成帮助
答案 0 :(得分:0)
我认为每帧都会调用Update()
(大约每秒30到60次),所以延迟需要更高,同时也要使你的游戏不依赖帧依赖Time.deltaTime
。
http://docs.unity3d.com/ScriptReference/Time-deltaTime.html
编辑:同样在显示的代码中,对于timer
变量,您永远不会分配false
,所以看起来它是多余的。您在if语句中比较变量delayAdmob
,但您在哪里更改或声明它?