add dialog
This commit is contained in:
		
							parent
							
								
									6efd668189
								
							
						
					
					
						commit
						9dd55d38f7
					
				|  | @ -0,0 +1,88 @@ | |||
| using System; | ||||
| using System.Linq; | ||||
| using I2.Loc; | ||||
| using MyGame.Scripts; | ||||
| using UniRx; | ||||
| using UnityEngine; | ||||
| using UnityEngine.UI; | ||||
| using Random = UnityEngine.Random; | ||||
| 
 | ||||
| namespace MyGame.Scenes.MiniGame.Scripts | ||||
| { | ||||
|     public class ScrollGameWatchVideoDialog : MonoBehaviour | ||||
|     { | ||||
|         private static readonly string SuccessCallbackTag = "ScrollGameDialogSuccessCallback"; | ||||
|         private static readonly string CloseCallbackTag = "ScrollGameDialogCloseCallback"; | ||||
|         private static readonly int OpenTrigger = Animator.StringToHash("OpenTrigger"); | ||||
|         private static readonly int CloseTrigger = Animator.StringToHash("CloseTrigger"); | ||||
| 
 | ||||
|         [SerializeField] private Animator backgroundAnimator; | ||||
|         [SerializeField] private Button closeButton; | ||||
|         [SerializeField] private Button closeButton2; | ||||
|         [SerializeField] private Button movieButton; | ||||
|         [SerializeField] private GameObject watchMovieObject; | ||||
|         [SerializeField] private GameObject waitObject; | ||||
|          | ||||
|         [SerializeField] private Text playCountText; | ||||
|         [SerializeField] private Text timeLimitText; | ||||
| 
 | ||||
|         private void Start() | ||||
|         { | ||||
|             var gameData = GameDataManager.GameData; | ||||
| 
 | ||||
| 
 | ||||
|             var count = Const.ScrollGameDailyPlayMaxCount - gameData.ScrollGameLastPlayTime; | ||||
|             var canWatch = count > 0; | ||||
|             watchMovieObject.SetActive(canWatch); | ||||
|             waitObject.SetActive(canWatch); | ||||
| 
 | ||||
|             playCountText.text = $"{count}"; | ||||
|             var limitTime = TimeSpan.Zero; | ||||
|             if (limitTime.TotalSeconds > 0) | ||||
|             { | ||||
|                 timeLimitText.text = String.Format(ScriptLocalization.UI.MissionDailyTimeLimit, limitTime.Hours, limitTime.Minutes, limitTime.Seconds); | ||||
|             } | ||||
|             else | ||||
|             { | ||||
|                 timeLimitText.text = String.Format(ScriptLocalization.UI.MissionDailyTimeLimit, 0, 0, 0); | ||||
|             } | ||||
|              | ||||
|             closeButton.OnClickAsObservable().Take(1).Subscribe(_ => | ||||
|             { | ||||
|                 LocalCacheManager.Load<Action>(CloseCallbackTag, null)?.Invoke(); | ||||
|                 LocalCacheManager.Remove(CloseCallbackTag); | ||||
|                 transform.parent.SetLocalScale(0); | ||||
|                 backgroundAnimator.SetTrigger(CloseTrigger); | ||||
|                 this.CallWaitForSeconds(.25f, () => | ||||
|                 { | ||||
|                     TransitionManager.Instance.UnloadScene(GameScenes.WatchMovieMiniGame); | ||||
|                 }); | ||||
|             }).AddTo(this); | ||||
|             closeButton2.OnClickAsObservable().Take(1).Subscribe(_ => | ||||
|             { | ||||
|                 LocalCacheManager.Load<Action>(CloseCallbackTag, null)?.Invoke(); | ||||
|                 LocalCacheManager.Remove(CloseCallbackTag); | ||||
|                 transform.parent.SetLocalScale(0); | ||||
|                 backgroundAnimator.SetTrigger(CloseTrigger); | ||||
|                 this.CallWaitForSeconds(.25f, () => | ||||
|                 { | ||||
|                     TransitionManager.Instance.UnloadScene(GameScenes.WatchMovieMiniGame); | ||||
|                 }); | ||||
|             }).AddTo(this); | ||||
|             movieButton.OnClickAsObservable().Take(1).Subscribe(_ => | ||||
|             { | ||||
|                 GetRewardDialog.ShowRewardVideo(GameScenes.WatchMovieMiniGame, AdManager.AD_PLACEMENT_SCROLLGAME, () => | ||||
|                 { | ||||
|                     LocalCacheManager.Load<Action>(SuccessCallbackTag, null)?.Invoke(); | ||||
|                     LocalCacheManager.Remove(SuccessCallbackTag); | ||||
|                 }); | ||||
|             }).AddTo(this); | ||||
|         } | ||||
| 
 | ||||
|         public static void ShowDialog(Action onSuccess = null, Action onClose = null){ | ||||
|             LocalCacheManager.Save(SuccessCallbackTag, onSuccess); | ||||
|             LocalCacheManager.Save(CloseCallbackTag, onClose); | ||||
|             TransitionManager.Instance.LoadSceneAdditive(GameScenes.WatchMovieMiniGame); | ||||
|         } | ||||
|     } | ||||
| } | ||||
|  | @ -0,0 +1,3 @@ | |||
| fileFormatVersion: 2 | ||||
| guid: b6a5d684a3564f668c71f59291f92fef | ||||
| timeCreated: 1655963845 | ||||
|  | @ -1489,6 +1489,57 @@ CanvasRenderer: | |||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 783292223} | ||||
|   m_CullTransparentMesh: 0 | ||||
| --- !u!1 &929930128 | ||||
| GameObject: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   serializedVersion: 6 | ||||
|   m_Component: | ||||
|   - component: {fileID: 929930130} | ||||
|   - component: {fileID: 929930129} | ||||
|   m_Layer: 0 | ||||
|   m_Name: Manager | ||||
|   m_TagString: Untagged | ||||
|   m_Icon: {fileID: 0} | ||||
|   m_NavMeshLayer: 0 | ||||
|   m_StaticEditorFlags: 0 | ||||
|   m_IsActive: 1 | ||||
| --- !u!114 &929930129 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 929930128} | ||||
|   m_Enabled: 1 | ||||
|   m_EditorHideFlags: 0 | ||||
|   m_Script: {fileID: 11500000, guid: b6a5d684a3564f668c71f59291f92fef, type: 3} | ||||
|   m_Name:  | ||||
|   m_EditorClassIdentifier:  | ||||
|   backgroundAnimator: {fileID: 1298517019} | ||||
|   closeButton: {fileID: 4540746} | ||||
|   closeButton2: {fileID: 468766243} | ||||
|   movieButton: {fileID: 208413211} | ||||
|   watchMovieObject: {fileID: 94292405} | ||||
|   waitObject: {fileID: 1244116848} | ||||
|   playCountText: {fileID: 2013893995} | ||||
|   timeLimitText: {fileID: 62056726} | ||||
| --- !u!4 &929930130 | ||||
| Transform: | ||||
|   m_ObjectHideFlags: 0 | ||||
|   m_CorrespondingSourceObject: {fileID: 0} | ||||
|   m_PrefabInstance: {fileID: 0} | ||||
|   m_PrefabAsset: {fileID: 0} | ||||
|   m_GameObject: {fileID: 929930128} | ||||
|   m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} | ||||
|   m_LocalPosition: {x: 0, y: 0, z: 0} | ||||
|   m_LocalScale: {x: 1, y: 1, z: 1} | ||||
|   m_Children: [] | ||||
|   m_Father: {fileID: 0} | ||||
|   m_RootOrder: 1 | ||||
|   m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} | ||||
| --- !u!114 &1063352196 | ||||
| MonoBehaviour: | ||||
|   m_ObjectHideFlags: 0 | ||||
|  |  | |||
|  | @ -10,6 +10,7 @@ public sealed class AdManager : SingletonMonoBehaviour<AdManager> { | |||
|     public static readonly string AD_PLACEMENT_PERFECT = "perfect_popcorn"; | ||||
|     public static readonly string AD_PLACEMENT_VIP = "vip_customer"; | ||||
|     public static readonly string AD_PLACEMENT_AUTO = "auto_popcorn"; | ||||
|     public static readonly string AD_PLACEMENT_SCROLLGAME = "scroll_game"; | ||||
| 
 | ||||
|     //-- ironSource --// | ||||
| #if UNITY_IOS | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue