using UnityEngine; using UnityEngine.UI; using UnityEngine.Advertisements; using System.Collections; public class FreeVIPButton : MonoBehaviour { public Text text1; public Text text2; private AlertPanel maskAlert; public void Refresh() { UserData userData = Session.GetInstance ().myUserData; if (userData.IsFullVIP ()) { gameObject.transform.localScale = Vector3.zero; } else if (userData.vipNextRound) { text1.text = Language.GetStr ("Menu", "vip"); text2.text = Language.GetStr ("Menu", "active"); gameObject.transform.localScale = Vector3.one; } else if(!Advertisement.isSupported || !Advertisement.IsReady("rewardedVideo")) { gameObject.transform.localScale = Vector3.zero; } else { text1.text = Language.GetStr ("Menu", "free"); text2.text = Language.GetStr ("Menu", "vip"); gameObject.transform.localScale = Vector3.one; } } public void OnClick() { UserData userData = Session.GetInstance ().myUserData; if(!userData.vipNextRound) { var options = new ShowOptions { resultCallback = HandleShowResult }; Advertisement.Show("rewardedVideo", options); maskAlert = AlertPanel.Show (null, "hehe"); } } private void HandleShowResult(ShowResult result) { switch (result) { case ShowResult.Finished: Debuger.Log ("The ad was successfully shown."); // // YOUR CODE TO REWARD THE GAMER // Give coins etc. Session.GetInstance ().myUserData.vipNextRound = true; DGAnalytics.CustomEvent("AdFinished"); Refresh (); break; case ShowResult.Skipped: Debuger.Log("The ad was skipped before reaching the end."); DGAnalytics.CustomEvent("AdSkipped"); break; case ShowResult.Failed: Debuger.LogError("The ad failed to be shown."); DGAnalytics.CustomEvent("AdFailed"); break; } if (maskAlert != null) { maskAlert.Close (); maskAlert = null; } } private float lastRefreshTime; void Update() { if(GameTime.time - lastRefreshTime > 5f) { lastRefreshTime = GameTime.time; Refresh (); } } }