//Check if upgrade has already been bought public static bool AlreadyPurchased(Upgrade upgradeToSave) { GlobalSaveData globalSaveData = GameManager.instance.globalSaveData; //look for a matching data piece in the level list ShopSaveData data = globalSaveData.shopSaveData.Where(obj => obj.dataName == upgradeToSave.upgradeName).SingleOrDefault(); if (data != null) { //update global level save data again return(true); } else { return(false); } }
//Save the new data, based on the level save data approach public void SaveUpgradeData(Upgrade upgradeToSave) { Debug.Log("Attempting to save shop data"); GlobalSaveData globalSaveData = GameManager.instance.globalSaveData; //look for a matching data piece in the level list ShopSaveData data = globalSaveData.shopSaveData.Where(obj => obj.dataName == upgradeToSave.upgradeName).SingleOrDefault(); if (data != null) { //update global level save data again data.unlocked = true; } else { //create a new one using default constructor ShopSaveData newData = new ShopSaveData(); newData.dataName = upgradeToSave.upgradeName; newData.unlocked = true; globalSaveData.shopSaveData.Add(newData); } SaveManager.SaveGlobal(); }