protected virtual void Awake()
        {
            GlobalSaverLoader globalSaverLoader = GlobalSaverLoader.GetInstance();

            globalSaverLoader.OnLoad += () => LoadData(globalSaverLoader.TryGetData <TData>());
            globalSaverLoader.OnSave += () => globalSaverLoader.AddDataToSerialize(GetDataForSave());
        }
 public static GlobalSaverLoader GetInstance()
 {
     if (s_instance == null)
     {
         GameObject g = new GameObject();
         s_instance = g.AddComponent <GlobalSaverLoader>();
     }
     return(s_instance);
 }