| 
									
										
										
										
											2022-02-10 04:26:52 +00:00
										 |  |  |  | using System.Collections; | 
					
						
							|  |  |  |  | using System.Collections.Generic; | 
					
						
							|  |  |  |  | using UnityEngine; | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  | using UnityEngine.UI; | 
					
						
							| 
									
										
										
										
											2022-02-16 04:11:28 +00:00
										 |  |  |  | using DG.Tweening; | 
					
						
							| 
									
										
										
										
											2022-02-10 04:26:52 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | public class PanelLevel : BasePanel | 
					
						
							|  |  |  |  | { | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |     [SerializeField] Button mBtnBack; | 
					
						
							|  |  |  |  |     [SerializeField] Button mBtnBackToMain; | 
					
						
							| 
									
										
										
										
											2022-02-13 09:36:12 +00:00
										 |  |  |  |     [SerializeField] LevelPage mLvPage; | 
					
						
							| 
									
										
										
										
											2022-02-16 04:11:28 +00:00
										 |  |  |  |     [SerializeField] RectTransform mRctChicken; | 
					
						
							|  |  |  |  |     [SerializeField] RectTransform mRctScream; | 
					
						
							|  |  |  |  |     [SerializeField] GameObject mGobOpMask; | 
					
						
							| 
									
										
										
										
											2022-02-10 04:26:52 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |     private bool mOpenInLevel = false; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     private void Awake() | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         UIUtils.BindBtn(mBtnBack, Close); | 
					
						
							| 
									
										
										
										
											2022-02-16 09:00:22 +00:00
										 |  |  |  |         UIUtils.BindBtn(mBtnBackToMain, OnClickBackToMain, AudioClipType.Click_Normal); | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-13 09:36:12 +00:00
										 |  |  |  |         mLvPage.DelClickLevel = OnClickLevel; | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-10 10:17:22 +00:00
										 |  |  |  |     public override void OnOpen() | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |     { | 
					
						
							|  |  |  |  |         base.OnOpen(); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-13 09:36:12 +00:00
										 |  |  |  |         mLvPage.LoadData(); | 
					
						
							| 
									
										
										
										
											2022-02-15 07:43:03 +00:00
										 |  |  |  |         mLvPage.PageTo((PlayerData.Instance.CurrentLevel - 1) / mLvPage.CountPerPage, false); | 
					
						
							| 
									
										
										
										
											2022-02-16 04:11:28 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |         LevelCell tCell = mLvPage.GetCell(PlayerData.Instance.CurrentLevel - 1); | 
					
						
							|  |  |  |  |         mRctChicken.position = tCell.CurrentSignTrans.position; | 
					
						
							|  |  |  |  |         mRctChicken.transform.SetParent(tCell.CurrentSignTrans); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |         mRctScream.gameObject.SetActive(false); | 
					
						
							|  |  |  |  |         mGobOpMask.SetActive(false); | 
					
						
							| 
									
										
										
										
											2022-02-16 11:41:50 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |         ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.PanelLevelShowed); | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-14 09:14:06 +00:00
										 |  |  |  |     public override void OnClose() | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         base.OnClose(); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-16 09:00:22 +00:00
										 |  |  |  |         AudioManager.Instance.PlaySound(AudioClipType.UIClose); | 
					
						
							| 
									
										
										
										
											2022-02-16 11:41:50 +00:00
										 |  |  |  |         ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.PanelLevelBack); | 
					
						
							| 
									
										
										
										
											2022-02-14 09:14:06 +00:00
										 |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |     public void Init(bool pOpenInLevel) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         mOpenInLevel = pOpenInLevel; | 
					
						
							|  |  |  |  |         mBtnBackToMain.gameObject.SetActive(pOpenInLevel); | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     private void OnClickLevel(int pLevelIndex) | 
					
						
							|  |  |  |  |     { | 
					
						
							|  |  |  |  |         if (mOpenInLevel && PlayerData.Instance.CurrentLevel == (pLevelIndex + 1)) | 
					
						
							|  |  |  |  |         { | 
					
						
							|  |  |  |  |             Close(); | 
					
						
							|  |  |  |  |         } | 
					
						
							|  |  |  |  |         else | 
					
						
							|  |  |  |  |         { | 
					
						
							| 
									
										
										
										
											2022-02-16 04:11:28 +00:00
										 |  |  |  |             mGobOpMask.SetActive(true); | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             LevelCell tCell = mLvPage.GetCell(pLevelIndex); | 
					
						
							|  |  |  |  |             mRctChicken.SetParent(transform); | 
					
						
							|  |  |  |  |             mRctChicken.DOMove(tCell.CurrentSignTrans.position, 0.5f).SetEase(Ease.Linear); | 
					
						
							| 
									
										
										
										
											2022-02-14 09:14:06 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-16 04:11:28 +00:00
										 |  |  |  |             mRctScream.gameObject.SetActive(true); | 
					
						
							|  |  |  |  |             mRctScream.position = tCell.transform.position; | 
					
						
							| 
									
										
										
										
											2022-02-16 09:00:22 +00:00
										 |  |  |  |             AudioManager.Instance.PlaySound(AudioClipType.StartGame); | 
					
						
							| 
									
										
										
										
											2022-02-16 04:11:28 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  |             PlayerData.Instance.CurrentLevel = pLevelIndex + 1; | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |             TimerManager.Instance.Schedule(GameManager.Instance.LoadGame, 1f); | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |         } | 
					
						
							|  |  |  |  |     } | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  |     private void OnClickBackToMain() | 
					
						
							|  |  |  |  |     { | 
					
						
							| 
									
										
										
										
											2022-02-16 11:41:50 +00:00
										 |  |  |  |         ToukaSDKManager.Instance.LogEventByUmeng(Const.AdsEvent.PanelLevelHome); | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2022-02-10 09:21:59 +00:00
										 |  |  |  |         GameManager.Instance.LoadMain(); | 
					
						
							|  |  |  |  |     } | 
					
						
							| 
									
										
										
										
											2022-02-10 04:26:52 +00:00
										 |  |  |  | } |