| | |
| | | {
|
| | | PlayerDatas.Instance.playerDataRefreshEvent += PlayerDataRefreshEvent;
|
| | | model.selectRealmRefresh += SelectRealmRefresh;
|
| | | m_RealmAnimation.onRotateComplete += OnRotateComplete;
|
| | | }
|
| | |
|
| | | protected override void OnActived()
|
| | |
| | | {
|
| | | PlayerDatas.Instance.playerDataRefreshEvent -= PlayerDataRefreshEvent;
|
| | | model.selectRealmRefresh -= SelectRealmRefresh;
|
| | | m_RealmAnimation.onRotateComplete -= OnRotateComplete;
|
| | | }
|
| | |
|
| | | protected override void OnAfterClose()
|
| | |
| | | void HideRealmUp()
|
| | | {
|
| | | m_ContainerRealmUp.gameObject.SetActive(false);
|
| | | m_RealmAnimation.StopRotate();
|
| | | foreach (var item in m_RealmStages)
|
| | | {
|
| | | item.Dispose();
|
| | |
| | | {
|
| | | for (int i = 0; i < m_RealmStages.Length; i++)
|
| | | {
|
| | | if (i < realms.Count)
|
| | | var index = m_RealmStages[i].animIndex;
|
| | | if (index < realms.Count)
|
| | | {
|
| | | m_RealmStages[i].gameObject.SetActive(true);
|
| | | m_RealmStages[i].Display(realms[i]);
|
| | | m_RealmStages[i].Display(realms[index]);
|
| | | }
|
| | | else
|
| | | {
|
| | | m_RealmStages[i].gameObject.SetActive(false);
|
| | | if (realms[realms.Count - 1] < model.realmMaxLevel)
|
| | | {
|
| | | m_RealmStages[i].Display(realms[0] + i);
|
| | | m_RealmStages[i].Display(realms[0] + index);
|
| | | }
|
| | | }
|
| | | }
|
| | |
| | | void DisplayRealmLevelUp()
|
| | | {
|
| | | var realmLevel = PlayerDatas.Instance.baseData.realmLevel;
|
| | | var requireLevelUp = model.selectRealm < model.realmMaxLevel && model.selectRealm > realmLevel;
|
| | | var requireLevelUp = realmLevel < model.realmMaxLevel && model.selectRealm > realmLevel;
|
| | | m_RealmLevelUp.gameObject.SetActive(requireLevelUp);
|
| | | if (requireLevelUp)
|
| | | {
|
| | |
| | | {
|
| | | if (dataType == PlayerDataType.RealmLevel)
|
| | | {
|
| | | DisplayRealmLevelUp();
|
| | | var realmLevel = PlayerDatas.Instance.baseData.realmLevel;
|
| | | if (realmLevel == model.realmMaxLevel)
|
| | | {
|
| | | DisplayRealmLevelUp();
|
| | | }
|
| | | else
|
| | | {
|
| | | var stage = model.GetRealmStage(realmLevel + 1);
|
| | | var currentStage = model.GetRealmStage(model.selectRealm);
|
| | | if (stage != currentStage)
|
| | | {
|
| | | m_RealmAnimation.StartRotate();
|
| | | }
|
| | | model.selectRealm = realmLevel + 1;
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | | private void OnRotateComplete()
|
| | | {
|
| | | var realmLevel = PlayerDatas.Instance.baseData.realmLevel;
|
| | | var stage = model.GetRealmStage(realmLevel + 1);
|
| | | List<int> realms = null;
|
| | | if (model.TryGetRealmStages(stage, out realms))
|
| | | {
|
| | | for (int i = 0; i < m_RealmStages.Length; i++)
|
| | | {
|
| | | var index = m_RealmStages[i].animIndex;
|
| | | if (index > 4)
|
| | | {
|
| | | m_RealmStages[i].Display(realms[0] + index);
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
|