public override void UnloadAll()
 {
     foreach (var map in m_wrappers)
     {
         SceneManager.UnloadSceneAsync(map.GetScene());
         OnMapRemoved?.Invoke(map);
     }
 }
 public override void Remove(SceneWrapper mapToRemove)
 {
     for (var i = 0; i < m_wrappers.Count; i++)
     {
         var map = m_wrappers[i];
         if (map.GUID.Equals(mapToRemove.GUID))
         {
             Debug.Log($"SceneCache: Guid {mapToRemove.GUID} removed from map.");
             m_wrappers.RemoveAt(i);
             OnMapRemoved.Invoke(mapToRemove);
             return;
         }
     }
 }
 public override void Remove(SceneWrapper map)
 {
     m_wrappers.Remove(map);
     OnMapRemoved?.Invoke(map);
 }