hch
6 天以前 23c416e43615b956f9b685b2184e9b18bf9cb665
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
using UnityEngine;
using UnityEngine.UI;
using DG.Tweening;
 
//主界面的右边栏缩进功能
public class RightFuncInHome : MonoBehaviour
{
 
    [SerializeField] ClickScreenOtherSpaceEvent clickScreenOtherSpaceEvent;
    [SerializeField] RectTransform funcCol;
    [SerializeField] RectTransform showPoint;
    [SerializeField] RectTransform hidePoint;
    [SerializeField] Button closeBtn;
    [SerializeField] Button storeBtn;
    [SerializeField] Button monthCardBtn;
 
    string listenWindowName = "";   //监听关闭时再显示
 
    bool isShow = false;
    void Awake()
    {
        monthCardBtn.AddListener(() =>
        {
            ListenWindow("");
            InvestModel.Instance.BuyInvest(InvestModel.monthCardType);
        });
        storeBtn.AddListener(() =>
        {
            ListenWindow("StoreBaseWin");
            UIManager.Instance.OpenWindow<StoreBaseWin>();
        });
 
        clickScreenOtherSpaceEvent.AddListener(() =>
        {
            if (isShow)
            {
                isShow = !isShow;
                ShowFuncCol(isShow);
            }
        });
        closeBtn.AddListener(() =>
        {
            ShowFuncCol(false);
        });
 
        UIManager.Instance.OnCloseWindow -= OnCloseWindow;
        UIManager.Instance.OnCloseWindow += OnCloseWindow;
    }
 
    void ShowBtns()
    {
        storeBtn.SetActive(FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Store));
    }
 
 
    //显隐功能栏
    public void ShowFuncCol(bool _isShow)
    {
        isShow = _isShow;
        funcCol.DOLocalMove(isShow ? showPoint.localPosition : hidePoint.localPosition, 0.3f);
        if (isShow)
        {
            ShowBtns();
        }
    }
 
    void OnCloseWindow(UIBase win)
    {
        if (win.name == listenWindowName)
        {
            ShowFuncCol(true);
            listenWindowName = "";
        }
    }
 
 
    void ListenWindow(string _listenWindowName)
    {
        ShowFuncCol(false);
        listenWindowName = _listenWindowName;
    }
 
}