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;
|
}
|
}
|
|
}
|