From b0a5d4688f1af73b5ad03ccc2df11c9aac1523a9 Mon Sep 17 00:00:00 2001 From: yyl <yyl> Date: 星期二, 29 七月 2025 16:56:23 +0800 Subject: [PATCH] Merge branch 'master' of http://192.168.1.20:10010/r/Project_SG_scripts --- Main/System/UIBase/UIBase.cs | 57 +++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 35 insertions(+), 22 deletions(-) diff --git a/Main/System/UIBase/UIBase.cs b/Main/System/UIBase/UIBase.cs index 37c3a1d..02d2031 100644 --- a/Main/System/UIBase/UIBase.cs +++ b/Main/System/UIBase/UIBase.cs @@ -9,9 +9,9 @@ public enum UILayer { Static, // 闈欐�乁I 閫傚悎鍋� 鎴樻枟 涓荤晫闈� - Bottom, // 涓荤晫闈� - Mid, // 鍔熻兘绐楀彛 - System, // 缃戠粶寮圭獥/鍏朵粬閲嶈寮圭獥 + Bottom, // 閮ㄥ垎鐣岄潰鐗规畩澶勭悊灞傜骇鐢� + Mid, // 澶ч儴鍒嗗姛鑳界獥鍙i兘鏀捐繖灞傦紝渚夸簬璺宠浆涓婁笅灞傜鐞嗭紙涓�涓晫闈㈠彲浠ュ悓鏃跺瓨鍦ㄥ涓級 + System, // 缃戠粶寮圭獥锛屼俊鎭彁绀虹瓑锛屽叾浠栭噸瑕佸脊绐� Loading, // 鍔犺浇鐣岄潰 } @@ -40,7 +40,14 @@ [SerializeField] public UILayer uiLayer = UILayer.Mid; [SerializeField][HideInInspector] public string uiName; [SerializeField] public bool isMainUI = false; - [SerializeField] public bool supportParentChildRelation = true; // 鏂板锛氭槸鍚︽敮鎸佺埗瀛愬叧绯� + + // 鏂板锛氭槸鍚︽敮鎸佺埗瀛愬叧绯� + // 鐖跺瓙鍏崇郴:UI鎷ユ湁鐨勪笂涓嬬骇閾惧紡鍏崇郴 + // 鍦ㄩ潪鐗瑰畾鎯呭喌涓� 閮借鎷ユ湁鐖跺瓙鍏崇郴 锛堜竴鑸潵璇村姛鑳介兘瑕佹湁鐖跺瓙鍏崇郴 渚嬪鐨勬槸渚嬪绯荤粺寮圭獥 + // 涓荤晫闈㈣繖绉嶄笉闇�瑕� 鍦ㄥ埗浣淯I浼� 鐩墠鐨勯渶姹傛槸 鍔熻兘鍏ㄩ儴鍋氬湪Middle灞傦級 + // 鎷ユ湁鐖跺瓙鍏崇郴 鍦ㄥ叧闂埗鐣岄潰鐨勬椂鍊� 瀛愮晫闈細杩炲悓涓�璧峰叧闂� 瀛愮晫闈㈡墦寮�鏃� 鐖剁晫闈㈢殑鈥滃洖鍚堟暟鈥濅細鍒锋柊 鍥炲悎鏁拌瑙佹寔涔呭寲鐩稿叧鐨勬敞閲� + // + [SerializeField] public bool supportParentChildRelation = true; // 鎸佷箙鍖栫浉鍏� [SerializeField] public bool isPersistent = false; @@ -65,12 +72,13 @@ // 鎵撳紑閬僵 [SerializeField] public bool openMask = false; - // 鐐瑰嚮绌虹櫧鍖哄煙鍏抽棴鐣岄潰 + // 榛樿鐐瑰嚮绌虹櫧鍖哄煙鍏抽棴鐣岄潰 [SerializeField] public bool clickEmptySpaceClose = false; private GameObject screenMask = null; private Button btnClickEmptyClose; + public Action btnClickEmptyCloseEvent = null; //鎻愪緵鐐瑰嚮绌虹櫧鍖哄煙鍏抽棴鐣岄潰鐨勫洖璋� // 璺烵neLevelWin鑱斿姩 瀹為檯涓婃槸闇�瑕佺户鎵胯嚜OneLevelWin鎵嶈兘鐢熸晥鐨勫�� 浣跨敤闇�瑕佹敞鎰� int m_FunctionOrder = 0; @@ -109,7 +117,8 @@ // 淇濆瓨鍘熷鍊肩敤浜庡姩鐢� if (_rectTransform != null) { - originalPosition = _rectTransform.anchoredPosition; + originalPosition = _rectTransform.anchoredPosition;; + } ApplySettings(); @@ -135,12 +144,20 @@ //寤惰繜鍒涘缓浼氬鑷村眰绾у湪ScreenMask涔嬩笂 GameObject goBtnESC = GameObject.Instantiate(Resources.Load<GameObject>("Prefabs/ClickEmptyCloseMask"), transform); btnClickEmptyClose = goBtnESC.GetComponent<Button>(); - btnClickEmptyClose.AddListener(CloseWindow); btnClickEmptyClose.transform.SetAsFirstSibling(); await UniTask.DelayFrame(5); - btnClickEmptyClose = goBtnESC.GetComponent<Button>(); - btnClickEmptyClose.AddListener(CloseWindow); + btnClickEmptyClose.AddListener(()=> + { + if (btnClickEmptyCloseEvent != null) + { + btnClickEmptyCloseEvent(); + } + else + { + CloseWindow(); + } + }); } } @@ -176,8 +193,9 @@ // 璁剧疆Canvas灞炴�� canvas.overrideSorting = true; - canvas.worldCamera = CameraManager.uiCamera; + + canvas.sortingLayerID = SortingLayer.NameToID("UI"); // 纭繚浣跨敤姝g‘鐨勬帓搴忓眰 // 鑾峰彇鎴栨坊鍔燙anvasGroup缁勪欢 canvasGroup = GetComponent<CanvasGroup>(); @@ -244,6 +262,10 @@ // 鏍规嵁鍔ㄧ敾绫诲瀷鎾斁鎵撳紑鍔ㄧ敾 PlayOpenAnimation(); + + // // 濡傛灉鍚庣画闇�瑕佺粺涓�澶勭悊鍒樻捣鎴栬�呭皬娓告垙鐨勭晫闈㈤�傞厤闂 + // _rectTransform.offsetMin = new Vector2(0, 10); //涓嬫柟 + // _rectTransform.offsetMax = new Vector2(0, -50); //涓婃柟 OnOpen(); @@ -331,24 +353,15 @@ /// <summary> /// 鎾斁UI鐗规晥 /// </summary> - /// <param name="effectName">鐗规晥璧勬簮鍚嶇О</param> + /// <param name="id">鐗规晥璧勬簮鍚嶇О</param> /// <param name="parent">鐗规晥鐖惰妭鐐癸紝榛樿涓哄綋鍓峌I</param> - /// <param name="autoDestroy">鏄惁鑷姩閿�姣侊紝榛樿涓簍rue</param> - /// <param name="destroyDelay">鑷姩閿�姣佸欢杩熸椂闂达紝榛樿涓�5绉�</param> /// <returns>鐗规晥娓告垙瀵硅薄</returns> - public EffectPlayer PlayUIEffect(int id, Transform parent = null, bool autoDestroy = true, float destroyDelay = 5f) + public UIEffectPlayer PlayUIEffect(int id, Transform parent = null) { // 浣跨敤榛樿鍊� if (parent == null) parent = transform; - - EffectPlayer player = parent.gameObject.AddComponent<EffectPlayer>(); - player.effectId = id; - player.autoDestroy = autoDestroy; - player.destroyDelay = destroyDelay; - player.canvas = canvas; - - return player; + return UIEffectPlayer.CreateEffect(id, parent, false); } #endregion -- Gitblit v1.8.0