广告打点
This commit is contained in:
parent
68a38bbef6
commit
54cb4868b5
|
|
@ -0,0 +1,45 @@
|
|||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using UnityEngine;
|
||||
|
||||
public partial class Const
|
||||
{
|
||||
public static class AdsEvent
|
||||
{
|
||||
public static string StartGame = "start_game";
|
||||
public static string FinishGame = "finish_game";
|
||||
|
||||
public static string GameWin = "game_success";
|
||||
public static string GameLose = "game_fail";
|
||||
|
||||
public static string ClickMoreGame = "click_game_button";
|
||||
public static string ClickLevel = "click_stage_button";
|
||||
public static string ClickTip = "click_tip_button";
|
||||
|
||||
public static string EndRetry = "game_retry";
|
||||
public static string EndNext = "game_next";
|
||||
public static string EndSelect = "game_select_stage";
|
||||
|
||||
public static string UnlockTip = "unlock_tip";
|
||||
|
||||
public static string PanelMainShowed = "mainpage_show";
|
||||
public static string PanelLevelShowed = "stage_page_show";
|
||||
public static string PanelLevelBack = "stage_page_click_back";
|
||||
public static string PanelLevelHome = "stage_page_click_home";
|
||||
}
|
||||
|
||||
public static class AdsEvtID
|
||||
{
|
||||
public static string Level = "game_level";
|
||||
}
|
||||
|
||||
public static class AdsEvtValue
|
||||
{
|
||||
public static string UnlockSound = "sound_unlock";
|
||||
|
||||
public static string GamingSelect = "gaming_select";
|
||||
public static string EndRetry = "end_game_retry";
|
||||
public static string EndNext = "end_game_next";
|
||||
public static string EndSelect = "end_game_select";
|
||||
}
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
fileFormatVersion: 2
|
||||
guid: bdd0dff9eb7634477b565d3b30529aee
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
|
|
@ -26,6 +26,7 @@ public class GameLogic : MonoBehaviour
|
|||
mUIGame.DelPlay = PlayFilm;
|
||||
|
||||
ToukaStageCommonEvent.Instance.StageStartEvent(PlayerData.Instance.CurrentLevel);
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.StartGame, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
}
|
||||
|
||||
private void PlayFilm(int[] pSoundOrder)
|
||||
|
|
@ -66,6 +67,7 @@ public class GameLogic : MonoBehaviour
|
|||
UIManager.Instance.CloseUI<PanelGame>();
|
||||
|
||||
ToukaStageCommonEvent.Instance.StageTimeEvent(PlayerData.Instance.CurrentLevel);
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.FinishGame, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
|
||||
PanelResult tUIResult = UIManager.Instance.OpenUI<PanelResult>();
|
||||
bool tHasComplete = PlayerData.Instance.EndingCountOfLevel(PlayerData.Instance.CurrentLevelID) == tLvData.Endings.Count;
|
||||
|
|
@ -81,12 +83,14 @@ public class GameLogic : MonoBehaviour
|
|||
AudioManager.Instance.PlaySound(AudioClipType.Win);
|
||||
|
||||
ToukaStageCommonEvent.Instance.StageSuccessEvent(PlayerData.Instance.CurrentLevel);
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.GameWin, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
AudioManager.Instance.PlaySound(AudioClipType.Lose);
|
||||
|
||||
ToukaStageCommonEvent.Instance.StageFailureEvent(PlayerData.Instance.CurrentLevel);
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.GameLose, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
}
|
||||
tUIResult.Init(PlayerData.Instance.CurrentLevelID, tEdData.EndingName, tEdData.IsGoodEnding, PlayerData.Instance.IsNextLevelPassed(), tHasNew, tHasComplete);
|
||||
}
|
||||
|
|
@ -96,6 +100,7 @@ public class GameLogic : MonoBehaviour
|
|||
tUIResult.Init(PlayerData.Instance.CurrentLevelID, "", false, PlayerData.Instance.IsNextLevelPassed(), false, true);
|
||||
|
||||
ToukaStageCommonEvent.Instance.StageFailureEvent(PlayerData.Instance.CurrentLevel);
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.GameLose, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
}
|
||||
|
||||
tUIResult.DelAgain = PlayAgain;
|
||||
|
|
|
|||
|
|
@ -35,6 +35,15 @@ public class PlayerData : StorageBase<PlayerData>
|
|||
}
|
||||
}
|
||||
|
||||
public bool HasShowedReview
|
||||
{
|
||||
get
|
||||
{
|
||||
return mHasShowedReview;
|
||||
}
|
||||
}
|
||||
[SerializeField] private bool mHasShowedReview = false;
|
||||
|
||||
[SerializeField] private Dictionary<int, List<int>> mEndingDic = new Dictionary<int, List<int>>();
|
||||
[SerializeField] private Dictionary<int, List<int>> mEndingAdTipDic = new Dictionary<int, List<int>>();
|
||||
|
||||
|
|
@ -132,8 +141,23 @@ public class PlayerData : StorageBase<PlayerData>
|
|||
}
|
||||
}
|
||||
|
||||
public int EndingAdTipCountOfLevel(int pLevelID)
|
||||
{
|
||||
if (mEndingAdTipDic.ContainsKey(pLevelID))
|
||||
{
|
||||
return mEndingAdTipDic[pLevelID].Count;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
public bool HasWatchedEndingAdTip(int pLevelID, int pEndingID)
|
||||
{
|
||||
return mEndingAdTipDic.ContainsKey(pLevelID) && mEndingAdTipDic[pLevelID].Contains(pEndingID);
|
||||
}
|
||||
|
||||
public void MarkReviewShowed()
|
||||
{
|
||||
mHasShowedReview = true;
|
||||
}
|
||||
}
|
||||
|
|
@ -89,6 +89,8 @@ public class ButtonEndings : MonoBehaviour
|
|||
|
||||
private void OnClick()
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.ClickTip, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
|
||||
ShowTip(false);
|
||||
DelClick?.Invoke();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -93,7 +93,7 @@ public class EndingCell : MonoBehaviour
|
|||
|
||||
private void OnClickAdTip()
|
||||
{
|
||||
ToukaSDKManager.Instance.PlayRewardAd("WatchTip", WatchAdSucceed, () =>
|
||||
ToukaSDKManager.Instance.PlayRewardAd(Const.AdsEvtValue.UnlockSound, WatchAdSucceed, () =>
|
||||
{
|
||||
UIManager.Instance.OpenUI<PanelNoAdsTip>();
|
||||
});
|
||||
|
|
@ -105,5 +105,7 @@ public class EndingCell : MonoBehaviour
|
|||
mBtnTip.gameObject.SetActive(true);
|
||||
mBtnAdTip.gameObject.SetActive(false);
|
||||
OnClickTip();
|
||||
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.UnlockTip, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
}
|
||||
}
|
||||
|
|
@ -47,6 +47,11 @@ public class PanelEndings : BasePanel
|
|||
|
||||
mCvsBg.DOFade(1, 0.3f);
|
||||
mRctBg.DOAnchorPosY(100, 0.3f);
|
||||
|
||||
if (PlayerData.Instance.EndingAdTipCountOfLevel(mLevelID) < mLvData.Endings.Count)
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmengAdShow(Const.AdsEvtValue.UnlockSound);
|
||||
}
|
||||
}
|
||||
|
||||
private void RefreshEndingList()
|
||||
|
|
|
|||
|
|
@ -117,15 +117,19 @@ public class PanelGame : BasePanel
|
|||
|
||||
private void OnClickMoreGame()
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.ClickMoreGame, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
|
||||
ToukaUtils.OpenMoreGames();
|
||||
}
|
||||
|
||||
private void OnClickLevel()
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.ClickLevel, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
|
||||
PanelLevel tUILevel = UIManager.Instance.OpenUI<PanelLevel>();
|
||||
tUILevel.Init(true);
|
||||
|
||||
ToukaSDKManager.Instance.PlayInterstitialAd("GameOpenLevel");
|
||||
ToukaSDKManager.Instance.PlayInterstitialAd(Const.AdsEvtValue.GamingSelect);
|
||||
}
|
||||
|
||||
private void OnClickMenu()
|
||||
|
|
|
|||
|
|
@ -36,6 +36,8 @@ public class PanelLevel : BasePanel
|
|||
|
||||
mRctScream.gameObject.SetActive(false);
|
||||
mGobOpMask.SetActive(false);
|
||||
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.PanelLevelShowed);
|
||||
}
|
||||
|
||||
public override void OnClose()
|
||||
|
|
@ -43,6 +45,7 @@ public class PanelLevel : BasePanel
|
|||
base.OnClose();
|
||||
|
||||
AudioManager.Instance.PlaySound(AudioClipType.UIClose);
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.PanelLevelBack);
|
||||
}
|
||||
|
||||
public void Init(bool pOpenInLevel)
|
||||
|
|
@ -77,6 +80,8 @@ public class PanelLevel : BasePanel
|
|||
|
||||
private void OnClickBackToMain()
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.PanelLevelHome);
|
||||
|
||||
GameManager.Instance.LoadMain();
|
||||
}
|
||||
}
|
||||
|
|
@ -95,6 +95,8 @@ public class PanelMain : BasePanel
|
|||
{
|
||||
ShowMainPart();
|
||||
}
|
||||
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.PanelMainShowed);
|
||||
}
|
||||
|
||||
public override void OnClose()
|
||||
|
|
|
|||
|
|
@ -28,6 +28,9 @@ public class PanelResult : BasePanel
|
|||
|
||||
[SerializeField] ButtonEndings mBtnEndings;
|
||||
|
||||
private bool mReviewShowed = false;
|
||||
private const int REVIEW_LEVEL = 1;
|
||||
|
||||
private void Awake()
|
||||
{
|
||||
UIUtils.BindBtn(mBtnAgain1, OnClickAgain, AudioClipType.Click_Normal);
|
||||
|
|
@ -76,26 +79,53 @@ public class PanelResult : BasePanel
|
|||
{
|
||||
mBtnEndings.ShowTip(!pIsWin && !pHasComplete);
|
||||
}
|
||||
|
||||
if (!PlayerData.Instance.HasShowedReview && PlayerData.Instance.CurrentLevel == REVIEW_LEVEL)
|
||||
{
|
||||
ToukaUtils.OpenSystemReviewPop();
|
||||
mReviewShowed = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
mReviewShowed = false;
|
||||
}
|
||||
}
|
||||
|
||||
private void OnClickAgain()
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.EndRetry, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
|
||||
DelAgain?.Invoke();
|
||||
|
||||
if (!mReviewShowed)
|
||||
{
|
||||
ToukaSDKManager.Instance.PlayInterstitialAd(Const.AdsEvtValue.EndRetry);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnClickNext()
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.EndNext, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
|
||||
GameManager.Instance.NextLevel();
|
||||
|
||||
ToukaSDKManager.Instance.PlayInterstitialAd("NextLevel");
|
||||
if (!mReviewShowed)
|
||||
{
|
||||
ToukaSDKManager.Instance.PlayInterstitialAd(Const.AdsEvtValue.EndNext);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnClickChoose()
|
||||
{
|
||||
ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.EndSelect, Const.AdsEvtID.Level, PlayerData.Instance.CurrentLevel.ToString());
|
||||
|
||||
PanelLevel tUILevel = UIManager.Instance.OpenUI<PanelLevel>();
|
||||
tUILevel.Init(true);
|
||||
|
||||
ToukaSDKManager.Instance.PlayInterstitialAd("EndOpenLevel");
|
||||
if (!mReviewShowed)
|
||||
{
|
||||
ToukaSDKManager.Instance.PlayInterstitialAd(Const.AdsEvtValue.EndSelect);
|
||||
}
|
||||
}
|
||||
|
||||
private void OnClickEndings()
|
||||
|
|
|
|||
Loading…
Reference in New Issue