public override void OnInspectorGUI()
    {
        gme = (GameSettingEntity)target;

        base.OnInspectorGUI();

        if (GUILayout.Button("Save Setting"))
        {
            gme.SaveSetting();
        }

        if (GUILayout.Button("Load Setting"))
        {
            gme.LoadSetting();
        }

        if (GUILayout.Button("Load Master Setting"))
        {
            gme.LoadGameSettingFromMaster();
        }

        if (GUILayout.Button("Refresh"))
        {
            gme.Refresh();
        }
    }
    public virtual void LoadGameSettingFromMaster()
    {
        GameSettingEntity dm = GameObject.Find("GameSettingEntity_DoNotChangeName").GetComponent <GameSettingEntity>();

        if (dm == this)
        {
            return;
        }

        dm.LoadSetting();
        gameSettings = dm.gameSettings;
    }
    void Awake()
    {
        instance = this;

        GameSettingEntity dm = GameObject.Find("GameSettingEntity_DoNotChangeName").GetComponent <GameSettingEntity>();

        dm.LoadSetting();

        if (dm == null)
        {
            Debug.LogError("GameSettingEntity not found in scene");
        }
        else
        {
            scoreName = dm.gameSettings.scoreName;
        }

        PlayerPrefs.SetString(scoreName, "0");
    }