| | |
| | | LianQiActLevel2[][] level2Arr; |
| | | |
| | | Sequence sequence; |
| | | Tween synEffectStopTween; |
| | | |
| | | private const float SynEffectDelay = 0.8f; |
| | | private const float HammerEffectDelay = 1.4f; |
| | |
| | | awardScroller.OnRefreshCell -= OnRefreshAwardCell; |
| | | clickScreenOtherSpace.RemoveAllListeners(); |
| | | sequence.Kill(); |
| | | synEffectStopTween.Kill(); |
| | | } |
| | | |
| | | protected override void OnOpen() |
| | |
| | | PlaySynEffect(girdLevel2To); |
| | | })); |
| | | } |
| | | if (hasSynEffect) |
| | | sequence.AppendInterval(SynEffectDelay); |
| | | sequence.OnComplete(() => |
| | | { |
| | | InitPanel(); |
| | | InitPanel(!hasSynEffect); |
| | | if (hasSynEffect) |
| | | ScheduleStopSynEffects(); |
| | | }); |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | private void InitPanel() |
| | | private void InitPanel(bool stopSynEffect = true) |
| | | { |
| | | if (this == null) return; // 防御:Clock 回调在窗口销毁后触发 |
| | | var M = LianQiManager.Instance; |
| | | sequence.Kill(); |
| | | if (stopSynEffect) |
| | | synEffectStopTween.Kill(); |
| | | |
| | | rectStartPosArr = RectTransListToArr(rectStartPos); |
| | | level1Arr = LianQiActLevelListToArr(level1); |
| | |
| | | M.SetActive(level2[i].imgItem, false); |
| | | level1[i].transform.localPosition = rectStartPos[i].transform.localPosition; |
| | | level2[i].transform.localPosition = rectStartPos[i].transform.localPosition; |
| | | level2[i].synUIEffect.Stop(); |
| | | if (stopSynEffect) |
| | | level2[i].synUIEffect.Stop(); |
| | | level2[i].hammerUIEffect.Stop(); |
| | | level2[i].imgChoose.SetActive(false); |
| | | level2[i].isChooseShow = false; |
| | |
| | | DisplayAssistiveItem(); |
| | | } |
| | | |
| | | private void ScheduleStopSynEffects() |
| | | { |
| | | synEffectStopTween.Kill(); |
| | | synEffectStopTween = DOVirtual.DelayedCall(SynEffectDelay, StopSynEffects); |
| | | } |
| | | |
| | | private void StopSynEffects() |
| | | { |
| | | if (this == null || level2Arr == null) return; |
| | | for (int i = 0; i < level2Arr.Length; i++) |
| | | { |
| | | if (level2Arr[i] == null) continue; |
| | | for (int j = 0; j < level2Arr[i].Length; j++) |
| | | { |
| | | if (level2Arr[i][j] == null) continue; |
| | | level2Arr[i][j].synUIEffect.Stop(); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 外部道具数量变化时刷新辅助道具栏(邮件/任务/购买等获得辅助道具) |
| | | /// </summary> |