少年修仙传客户端代码仓库
hch
3 天以前 600733c8f592cb9e65f2b7a3e110ac1d686e6bfe
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
84
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
 
[CreateAssetMenu(menuName = "Config/FunctionButtonConfig")]
public class FunctionButtonConfig : ScriptableObject
{
    public UIConfig normal = new UIConfig("Title_Normal", Color.white, 23);
    public UIConfig selected = new UIConfig("Title_Clicked", Color.white, 24);
    public UIConfig locked = new UIConfig("Title_Locked", Color.white, 23);
 
    static FunctionButtonConfig m_Default;
    public static FunctionButtonConfig GetDefault()
    {
        if (m_Default == null)
        {
            m_Default = BuiltInLoader.LoadScriptableObject<FunctionButtonConfig>("FunctionButton_Default");
        }
 
        return m_Default;
    }
 
    public string GetIconKey(TitleBtnState _state)
    {
        switch (_state)
        {
            case TitleBtnState.Click:
                return selected.iconKey;
            case TitleBtnState.Normal:
                return normal.iconKey;
            case TitleBtnState.Locked:
                return locked.iconKey;
            default:
                return string.Empty;
        }
    }
 
    public Color GetFontColor(TitleBtnState _state)
    {
        switch (_state)
        {
            case TitleBtnState.Click:
                return selected.fontColor;
            case TitleBtnState.Normal:
                return normal.fontColor;
            case TitleBtnState.Locked:
                return locked.fontColor;
            default:
                return Color.white;
        }
    }
 
    public int GetFontSize(TitleBtnState _state)
    {
        switch (_state)
        {
            case TitleBtnState.Click:
                return selected.fontSize;
            case TitleBtnState.Normal:
                return normal.fontSize;
            case TitleBtnState.Locked:
                return locked.fontSize;
            default:
                return 24;
        }
    }
 
    [System.Serializable]
    public struct UIConfig
    {
        public string iconKey;
        public Color fontColor;
        public int fontSize;
 
        public UIConfig(string _icon, Color _fontColor, int _fontSize)
        {
            this.iconKey = _icon;
            this.fontColor = _fontColor;
            this.fontSize = _fontSize;
        }
    }
 
}