public void SaveToDisk() { var payload = new SceneContextModel() { sceneName = SceneManager.GetActiveScene().name, boolStates = MapEntityBoolStates.Select(x => { return(new BoolStateModel() { name = x.name, state = x.State }); }) .Distinct() .ToList(), quantityStates = MapEntityQtyStates.Select(x => { return(new QuantityStateModel() { name = x.name, state = x.State }); }) .Distinct() .ToList() }; GlobalDataContext.UpdateSceneData(payload); }
public void UpdateSceneData(SceneContextModel sceneModel) { var existingSceneData = LoadedScenes.Where(x => x.sceneName == sceneModel.sceneName) .FirstOrDefault(); if (existingSceneData != null) { existingSceneData.boolStates = sceneModel.boolStates; } else { LoadedScenes.Add(sceneModel); } SaveDataManager.SaveData(LoadedScenes, DataConsts.SCENE_DATA_FILE); }
public void UpdateSceneData(SceneContextModel sceneModel) { var existingSceneData = LoadedScenes.Where(x => x.sceneName == sceneModel.sceneName) .FirstOrDefault(); if (existingSceneData != null) { existingSceneData.boolStates = new List <BoolStateModel>(sceneModel.boolStates); existingSceneData.quantityStates = new List <QuantityStateModel>(sceneModel.quantityStates); } else { LoadedScenes.Add(sceneModel); } SaveDataManager.SaveData(LoadedScenes, DataConsts.SCENE_DATA_FILE); Debug.Log($"Game saved to: {DataConsts.SCENE_DATA_FILE} in {Application.persistentDataPath}."); }