public override void Show(bool b = true, bool useGroup = true, bool force = false) { if (b) { //所有的Tooltip均为互斥 if (CurShow != null && CurShow != this) { CurShow.Show(false, true, true); } CurShow = this; RectTrans.SetAsLastSibling(); closeInvoke?.Kill(); base.Show(b, useGroup, force); } else { closeInvoke?.Kill(); if (force) { base.Show(b, useGroup, force); } else { closeInvoke = Util.Invoke(() => base.Show(b, useGroup, force), 0.01f); } } }
public override void OnShow(bool b) { base.OnShow(b); Vector2 realTweenVec = Vector2.zero; if (RectTrans != null) { if (b) { RectTrans.localScale = From; realTweenVec = To; } else { RectTrans.localScale = To; realTweenVec = From; } if (b || IsEffClose) { tweener = RectTrans.DOScale(realTweenVec, Duration) .SetEase(GetEase(b)) .SetDelay(Delay); } } }
public bool SetFocus() { //将主界面等级并且有组的界面设置焦点 if (Group != ViewGroup.None) { if (!UIMgr.GroupViews.ContainsKey(Group)) { return(false); } List <UView> views = UIMgr.GroupViews[Group].OrderBy((x) => x.RectTrans.GetSiblingIndex()).ToList(); if (views.Count == 0) { return(false); } int newIndex = views[views.Count - 1].RectTrans.GetSiblingIndex(); if (newIndex == RectTrans.GetSiblingIndex()) { return(false); } RectTrans.SetSiblingIndex(newIndex); SetDirtyAll(); return(true); } return(false); }
public virtual void Attach(ViewLevel viewLevel, UView beAttchedView) { UIMgr = beAttchedView?.UIMgr; ParentView?.SubViews.Remove(this); if (viewLevel == ViewLevel.Root) { ParentView = beAttchedView; RootView = beAttchedView; ViewLevel = ViewLevel.Main; RectTrans.SetParent(RootView?.CanvasTrans); UIMgr.AddToMainViews(this); UIMgr.AddToGroupViews(this); } else if (viewLevel == ViewLevel.Main) { ParentView = beAttchedView; RootView = beAttchedView.RootView; ViewLevel = ViewLevel.Sub; RectTrans.SetParent(RootView?.CanvasTrans); UIMgr.AddToGroupViews(this); //移动到父节点下面 Trans.SetSiblingIndex(ParentView.Trans.GetSiblingIndex() + ParentView.SubViews.Count + 1); } else { CLog.Error("无法挂载到:" + viewLevel); } ParentView.SubViews.Add(this); }
void Update() { if (RT == null) { return; } if (update) { rect = new RectTrans(this); } rect.pivot = RT.pivot; rect.anchorMin = RT.anchorMin; rect.anchorMax = RT.anchorMax; _cornerRT = rect.cornerRT; _cornerLB = rect.cornerLB; _center = rect.center; offsetMax = RT.offsetMax; offsetMin = RT.offsetMin; anchoredPos = RT.anchoredPosition; _offsetMax = rect.offsetMax; _offsetMin = rect.offsetMin; _anchoredPos = rect.anchoredPos; }
public void ShowPointer(UControl control, float rot = 90, bool maskOnce = true) { if (control == null) { return; } if (control.RectTrans == null) { return; } Show(true); UIPointer?.Show(true); UIRect?.gameObject.SetActive(false); UICircle?.gameObject.SetActive(false); if (UIPointer) { UIPointer.SetPosAndRot(RectTrans.InverseTransformPoint(control.RectTrans.position), new Vector3(0, 0, rot)); IsMaskOnce = maskOnce; PointedControl = control; if (maskOnce) { control.UIMgr.AddIgnoreBlockClickOnce(control); } } }
public static bool Hover(this MonoBehaviour mono) { var rt = new RectTrans(mono); var rect = new Rect(rt.center, rt.sizeAbs); return(rect.Contains(UI.mousePosRef)); }
public void ShowRawRect(UControl control, float x, float y, bool ignoreOnce = true) { if (control == null) { return; } if (control.RectTrans == null) { return; } if (!control.IsActiveSelf) { return; } if (!control.PUIView.IsShow) { CLog.Error("错误!,控件的父节点UIView没有显示"); return; } Show(true); UIPointer?.Show(false); UICircle?.gameObject.SetActive(false); UIRect?.gameObject.SetActive(true); UIRect?.SetCenter(RectTrans.InverseTransformPoint(control.RectTrans.position)); UIRect?.SetRect(x, y); IsMaskOnce = ignoreOnce; MaskedControl = control; if (ignoreOnce) { control.UIMgr.AddIgnoreBlockClickOnce(control); } }
public override void Enter() { showTime = DateTime.Now; RectTrans.localScale = new Vector3(0, 1, 1); RectTrans.anchoredPosition = Vector3.zero; RectTrans.DOScaleX(1, UIEffectTime.FROM_LEFT_PULLED); RectTrans.DOAnchorPosX(RectTrans.sizeDelta.x / 2, UIEffectTime.FROM_LEFT_PULLED); }
public override void Enter() { SetSourcePosition(); RectTrans.position = sourcePosition; RectTrans.localScale = Vector3.zero; RectTrans.DOLocalMove(Vector3.zero, UIEffectTime.POP_FROM_UI); RectTrans.DOScale(1, UIEffectTime.POP_FROM_UI); }
public override void Exit() { RectTrans.DOMove(sourcePosition, UIEffectTime.POP_FROM_UI); RectTrans.DOScale(0, UIEffectTime.POP_FROM_UI).OnComplete(() => { OnExitComplete(); }); }
public override void Exit() { RectTrans.DOScaleX(0, UIEffectTime.OPEN_FROM_MIDDLE).OnComplete(() => { OnExitComplete(); OnExitComplete -= OnExitComplete; }); }
public void Update() { if (TextMesh.text != _TempText) { _TempText = TextMesh.text; RectTrans.SetSizeWithCurrentAnchors(RectTransform.Axis.Horizontal, TextMesh.rectTransform.rect.width); } }
public void Init(string text, Action onClick = null) { RectTrans.Find("Text").GetComponent <Text>().text = text; if (onClick != null) { GetComponent <Button>().onClick.AddListener(new UnityAction(onClick)); } }
void Start() { this.AddInput(Input, 0); rt = new RectTrans(this); rtSize = rt.sizeAbs.RoundToInt(); buffer = new Color[rtSize.eleCount()]; viewMapSize = texMap.Size(); this.DestroyImages(); }
protected override void Awake() { base.Awake(); if (RectTrans == null) { return; } animator = RectTrans.GetComponent <Animator>(); }
public override void Exit() { RectTrans.DOScaleX(0, UIEffectTime.FROM_LEFT_PULLED); RectTrans.DOAnchorPosX(0 / 2, UIEffectTime.FROM_LEFT_PULLED).OnComplete(() => { OnExitComplete(); OnExitComplete -= OnExitComplete; }); }
//private TweenerCore<float,> colorTween; protected override void Awake() { base.Awake(); if (RectTrans != null) { CanvasGroup = RectTrans.GetComponent <CanvasGroup>(); //if (CanvasGroup != null) // CanvasGroup.alpha = From; } }
public override void OnShow(bool b, bool isActiveByShow) { base.OnShow(b, isActiveByShow); if (RectTrans != null) { if (IsReset) { RectTrans.localScale = b ? FromScale : ToScale; } tweener = RectTrans.DOScale(b?ToScale:FromScale, Duration).SetEase(GetEase(b)).OnComplete(OnTweenComplete).SetDelay(Delay); } }
void _Input() { var rtBg = new RectTrans(BgRT); var rtTitle = new RectTrans(titleRT); var rtDesc = new RectTrans(descRT); var rtDescBg = new RectTrans(descBgRT); this.BeginOrtho(); this.DrawBG(); GLUI.DrawString(rtTitle.cornerLB, name); GLUI.DrawString(rtDesc.cornerLT - 24.Y(), desc); }
protected void ToLeft() { Vector2 targetAnchorPos = RectTrans.anchoredPosition - Vector2.right * offset; RectTrans.DOAnchorPos(targetAnchorPos, UIEffectTime.SLIDE_FROM_Right).SetEase(Ease.Linear).OnComplete(() => { if (OnExitComplete != null) { OnExitComplete(); } }); }
protected void FromLeft() { InitPos(); offset = DefaultScreenWidth + RectTrans.sizeDelta.x; RectTrans.anchoredPosition = DefaultAnchorPos - Vector2.right * offset; RectTrans.DOAnchorPos(DefaultAnchorPos, UIEffectTime.SLIDE_FROM_Right).SetEase(Ease.Linear).OnComplete(() => { if (onEnterComplete != null) { onEnterComplete(); } }); }
protected override void Awake() { base.Awake(); meshFilter = GetComponent <MeshFilter>(); meshRenderer = GetComponent <MeshRenderer>(); aimPoint = RectTrans.Find("aimPoint"); ringMaterial = meshRenderer.material; color = ringMaterial.GetColor("_Color"); if (Detail > 2) { SetMesh(Detail); } }
public override void OnShow(bool b) { base.OnShow(b); if (RectTrans != null) { if (IsReset) { RectTrans.localScale = b ? From : To; } tweener = RectTrans.DOScale(b ? To : From, Duration) .SetEase(GetEase(b)) .OnComplete(OnTweenComplete) .SetDelay(Delay); } }
public void ShowOrHideBtns() { Init(); if (this.gameObject.activeInHierarchy) { RectTrans.DOSizeDelta(new Vector2(205f, 0f), 0.7f).OnComplete(() => this.gameObject.SetActive(false)); Cg.DOFade(0, 0.8f); } else { this.gameObject.SetActive(true); RectTrans.DOSizeDelta(new Vector2(205f, 930f), 0.7f); Cg.DOFade(1, 0.8f); } }
protected override void OnEnable() { if (_holder == null) { _holder = GetComponentInParent <InteractableUIHolder>(); } RectTrans.localScale = Vector3.one; //OnMyEffectStart(); Tweener tw = RectTrans.DOScale(Vector3.zero, .2f); tw.SetEase(_easeType).From(); //tw.OnComplete(OnMyEffectOver); }
public void OnDrag(PointerEventData data) { if (IsDragable) { if (GO != BaseInputMgr.LastHitUI) { return; } if (RectTrans == null || ParentRectTrans == null) { return; } RectTrans.Translate(data.delta); ClampToWindow(); IsDragged = true; // 限制当前面板在父节点中的区域位置 } }
public override void OnShow(bool b, bool isActiveByShow) { base.OnShow(b, isActiveByShow); if (RectTrans != null) { if (CanvasGroup == null) { CanvasGroup = RectTrans.GetComponent <CanvasGroup>(); } if (IsReset) { CanvasGroup.alpha = b?From:To; } tweener = DOTween.To(() => CanvasGroup.alpha, x => CanvasGroup.alpha = x, b ? To : From, Duration).SetEase(GetEase(b)).OnComplete(OnTweenComplete).SetDelay(Delay); } }
private void DoRun() { CancelInvoke(); Graphic graphic = GetComponent <Graphic>(); Color newColor = graphic.color; newColor.a = 0f; graphic.CrossFadeColor(newColor, _FlyTime * .7f, true, true);//*.7 means the color will change faster than position Graphic[] child_graphics = GetComponentsInChildren <Graphic>(); for (int i = 0; i < child_graphics.Length; ++i) { child_graphics[i].CrossFadeColor(newColor, _FlyTime * .7f, true, true); } RectTrans.DOMoveY(transform.position.y + _FlyDistance, _FlyTime) .SetEase(_easeType) .OnComplete(TweenComplete); }
void Input() { if (Events.KeyDown(hotkey)) { visible = !visible; } this.BeginOrtho(); if (!visible) { return; } this.DrawBG(); var rt = new RectTrans(this); var center = (rt.cornerLT + rt.cornerRT) * 0.5f; var pos = center - 15.Y(); GLUI.DrawString("控制台(" + hotkey.ToString() + ")", pos, Vectors.half2d); var buttonSize = new Vector2(150, 45); if (EG.Button("遇战", center - 80.Y(), buttonSize)) { Battle._Start(); } else if (EG.Button("满状态", center - 140.Y(), buttonSize)) { CharCtrl.I.P.hp = CharCtrl.I.P.hpMax; CharCtrl.I.P.mp = CharCtrl.I.P.mpMax; } //if (EG.Button("测试命令", center - 120.Y(), buttonSize)) //{ // SkillMgr.GetSkill("flee").Cast(); //} else if (EG.Button("X", rt.cornerRT - 24.XY() + 2.Y(), 24.XY())) { visible = !visible; } else { this.DoDragWindow(); // 可拖曳窗口 } }