リワード動画の処理を外から使えるようにした

This commit is contained in:
kimura 2022-04-14 16:10:14 +09:00
parent 326886a34a
commit 0610bfb4d6
1 changed files with 25 additions and 17 deletions

View File

@ -103,27 +103,35 @@ namespace MyGame.Scripts
}).AddTo(this);
okButton.OnClickAsObservable().Take(1).Subscribe(_ =>
{
if (AdManager.Instance.IsLoadedRewardVideo())
ShowRewardVideo(GameScenes.WatchMovieCoin, Placement, () =>
{
AdManager.Instance.ShowRewardVideo(result =>
{
if (result)
{
GameDataManager.GameData.AddAdCount();
LocalCacheManager.Load<Action>(OkCallbackTag, null)?.Invoke();
LocalCacheManager.Remove(OkCallbackTag);
}
TransitionManager.Instance.UnloadScene(GameScenes.WatchMovieCoin);
}, Placement);
}
else
{
TransitionManager.Instance.LoadSceneAdditive(GameScenes.WatchMovieFailure);
TransitionManager.Instance.UnloadScene(GameScenes.WatchMovieCoin);
}
LocalCacheManager.Load<Action>(OkCallbackTag, null)?.Invoke();
LocalCacheManager.Remove(OkCallbackTag);
});
}).AddTo(this);
}
public static void ShowRewardVideo(GameScenes unloadScene, string placement, Action successCallback)
{
if (AdManager.Instance.IsLoadedRewardVideo())
{
AdManager.Instance.ShowRewardVideo(result =>
{
if (result)
{
successCallback?.Invoke();
GameDataManager.GameData.AddAdCount();
}
TransitionManager.Instance.UnloadScene(unloadScene);
}, placement);
}
else
{
TransitionManager.Instance.LoadSceneAdditive(GameScenes.WatchMovieFailure);
TransitionManager.Instance.UnloadScene(unloadScene);
}
}
private static void ShowDialog(RewardType rewardType, Action okCallback, Action closeCallback)
{
LocalCacheManager.Save(OkCallbackTag, okCallback);