2015-02-08 101 views
1

我是C#新手,任何人都可以幫助我解決這個問題。我在Unity中創建遊戲,並在Gameover狀態下集成了admob(interstitial)。現在它運行良好,但每次用戶到達遊戲畫面時,顯示煩人的廣告看起來都很煩人。所以我認爲在展示的廣告中添加一些延遲時間是很好的。至於我得到了一些簡單的邏輯,但它不工作,因爲我需要,不知道。在Gameover上添加延遲時間AdMob插頁式廣告

這裏是我的代碼,例如我希望它有2分鐘的延遲,所以在gameover時它不會執行插頁式廣告,如果它沒有達到延遲時間。櫃檯應持續計數。如果計數器達到2分鐘以上,並且出現下一個遊戲畫面,廣告應該顯示出來,並且計數器從零開始重新計數。

// For timer Admob 
public int counter = 0; 
public bool timer = true; 

void Update() 
{ 

    if (timer == true) 
    { 
     counter++; 
    } 
} 

在我GAMEOVER屏幕

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 
} 

真的apreciated求助

回答

0

我覺得Update()被稱爲每一幀(大概在30 - 60次每秒),所以延遲必須大大更高,也讓你的遊戲不依賴幀使用Time.deltaTime

http://docs.unity3d.com/ScriptReference/Time-deltaTime.html

編輯:另外在顯示代碼,timer變量,你永遠不會分配false所以看起來它是多餘的。您在if語句中比較變量delayAdmob,但您在哪裏更改或聲明它?

+0

whoopss ...對不起編輯! 我還在學習c#的統一,不知道如何使用deltatime。我認爲counter ++不起作用,因爲我把它放在錯誤的地方。我不知道它放在哪裏。 – 2015-02-08 05:14:02

+0

@MasNino嘗試增加延遲(120在gameover屏幕)像3600的東西,它應該是大約2分鐘,我認爲。你也沒有說明你現在有什麼問題。廣告根本沒有顯示?或者沒有這個腳本就是一樣的? – swistak 2015-02-08 05:21:02

+0

@MasNino或者您可以使用'counter + = Time.deltaTime'。但我現在無法測試它。 – swistak 2015-02-08 05:34:19