public void StartFillImage(Ryan3DButton btn) { if (!fillImg) { fillImg = GetComponent <Image>(); fillImg.fillAmount = 1f; fillImg.transform.localScale = Vector3.one * .2f; mySque = DOTween.Sequence(); mySque.Append(fillImg.transform.DOScale(Vector3.one * 0.3f, .2f).SetEase(Ease.OutSine)); //弹出界面 mySque.Append(fillImg.DOFillAmount(0, 3f)); mySque.OnComplete(() => { btn.MouseSelect(); }); } }
void UpdateInteractive() { RaycastHit hit; if (Physics.Raycast(gyroCamera.ScreenPointToRay(screenCenter), out hit)) { if (hit.collider != null) { //显示3D鼠标 InspectionUIMgr.Instance.SetMouse2D(false); InspectionUIMgr.Instance.mouseIcon3D.transform.position = hit.point; InspectionUIMgr.Instance.mouseIcon3D.forward = -hit.normal; Ryan3DButton tmpBtn = hit.transform.GetComponent <Ryan3DButton>(); if (tmpBtn != null) { //同一个按钮不作操作 if (curBtn == tmpBtn) { return; } //从一个按钮射到另一个按钮 if (curBtn != null && curBtn != tmpBtn) { //上一个按钮执行退出操作 curBtn.MouseExit(); //隐藏鼠标倒计时 InspectionUIMgr.Instance.StopFillImage(); } curBtn = tmpBtn; //鼠标经过操作 curBtn.MouseHover(); InspectionUIMgr.Instance.ShowMouseCountDown(tmpBtn); } else { ClearBtnHover(); } } else { ClearBtnHover(); } } //显示鼠标 else { ClearBtnHover(); } }
internal void ShowMouseCountDown(Ryan3DButton tmpBtn) { mouseCountDown.StartFillImage(tmpBtn); }