iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 29
0

(本篇文章網誌版:http://shineright.blogspot.tw/2016/12/day-29.html

今天我要完成遊戲結束畫面上方的兩個按鈕。左邊的「看遊戲的製作過程」可以讓玩家連結到這系列文章的Day 1,右邊的「看個廣告支持作者」可以讓(不小心點到的)玩家看一則廣告支($)持($)我!先從廣告開始做起吧……

要從免費遊戲收益,最簡單的方試就是在遊戲中穿插廣告。Unity Engine內建的Unity Ads可以讓遊戲設計師輕輕鬆鬆地把廣告整合在遊戲中。

在上方的Window選單打開Services欄,點選Ads,把Monetize your games項選打開。在測試廣告時必須選取Enable test mode以免點到自己遊戲的廣告(這是違法的)。

http://ithelp.ithome.com.tw/upload/images/20161229/20103149xDIh4dxDpo.png

進入Play Mode,Console欄會在遊戲剛進入遊戲時顯示「UnityAdsEditor: Initialize(…)」,表示Unity Ads準備就緒。

確定Unity Ads可以正常執行後,為「看個廣告」按鈕加上觸發廣告的程式碼。

using UnityEngine;
using System.Collections;
using UnityEngine.UI; //Button
using UnityEngine.Advertisements; //Advertisement

public class ShowAdsOnClick : MonoBehaviour
{
    void Start()
    {
        GetComponent<Button> ().onClick.AddListener (() => {
            ButtonClicked ();
        } );
    }
    
    void ButtonClicked()
    {
        if (Advertisement.IsReady ()) {
            Advertisement.Show ();
        }
    }
}

非常簡單,按下按鈕後,先以Advertisement.IsReady()檢查廣告是否就緒。若廣告就緒,則呼叫Advertisement.Show()播放廣告。

接著來做「看遊戲製作過程」按鈕。把下段Script加到按鈕上。

using UnityEngine;
using System.Collections;
using UnityEngine.UI;

public class LinkToURLOnClick : MonoBehaviour 
{
    public string url;
    
    void Start()
    {
        GetComponent<Button> ().onClick.AddListener (() => {
            ButtonClicked ();
        } );
    }
    
    void ButtonClicked()
    {
        Application.OpenURL (url);
    }
}

在Inspector把Url設成想要連到的網址,在玩家點擊按鈕時,Application.OpenURL(url)就會跟據不同裝置,以不同的瀏覽器開啟目標網址了。

待續。


上一篇
Day 28: 排行榜
下一篇
Day 30: 發佈遊戲、上架
系列文
我要和天一樣高!!!(Unity 2D手機小遊戲開發日誌)30

尚未有邦友留言

立即登入留言