| | |
| | | GuideConfig config;
|
| | | NewBieGuideScriptableObject stepConfig; //引导步骤
|
| | |
|
| | | float lastShowTime;
|
| | |
|
| | | #region Built-in
|
| | |
|
| | | protected override void InitComponent()
|
| | | {
|
| | | m_ClickTalk.AddListener(()=>
|
| | | m_ClickTalk.AddListener(() =>
|
| | | {
|
| | | ReportStepOver();
|
| | | });
|
| | |
| | | CloseWindow();
|
| | | return;
|
| | | }
|
| | | lastShowTime = Time.time;
|
| | |
|
| | | if (config.WinName != "EquipExchangeWin" && UIManager.Instance.IsOpened<EquipExchangeWin>())
|
| | | {
|
| | |
| | | }
|
| | |
|
| | | m_ClickEffect.effectId = stepConfig.effect; //如果需要点击特效也增加偏移量
|
| | | m_ClickEffect.SetActive(true);
|
| | | m_ClickEffect.Play();
|
| | | m_ClickEffect.transform.position = m_ClickTarget.position;
|
| | | m_ClickEffect.transform.localPosition = m_ClickEffect.transform.localPosition + (Vector3)stepConfig.usherPosition;
|
| | | m_ClickEffect.SetActive(false);
|
| | | DelayShowClickEffect().Forget();
|
| | |
|
| | | if (stepConfig.clickCompleteNoMask)
|
| | | {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | async UniTask DelayShowClickEffect()
|
| | | {
|
| | | await UniTask.Delay(stepConfig.delayTime);
|
| | | m_ClickEffect.SetActive(true);
|
| | | m_ClickEffect.Play();
|
| | | m_ClickEffect.transform.position = m_ClickTarget.position;
|
| | | m_ClickEffect.transform.localPosition = m_ClickEffect.transform.localPosition + (Vector3)stepConfig.usherPosition;
|
| | |
|
| | | }
|
| | |
|
| | | void LateUpdate()
|
| | | {
|
| | | if (Input.GetMouseButtonUp(0))
|
| | |
| | | }
|
| | | if (stepConfig.clickAnyWhereComplete || m_NewBieMask.mask.IsInCirleArea(Input.mousePosition, CameraManager.uiCamera))
|
| | | {
|
| | | if (stepConfig.delayTime > 0 && (Time.time - lastShowTime)*1000 < stepConfig.delayTime)
|
| | | {
|
| | | return;
|
| | | }
|
| | | if (m_ClickTarget == null)
|
| | | {
|
| | | Debug.LogError("引导 m_ClickTarget == null; step = " + NewBieCenter.Instance.guideStep);
|