ILevelData ILevelSerializer.LoadLevel(string levelName) { Debug.LogFormat("Loading level {0}...", levelName); if (forceCreateNewLevelOnLoad) { ILevelData levelData = new LevelData(10, 10, levelName); levelData.id = 42; return(levelData); } if (FileExists(levelName) == false) { Debug.LogError(string.Format("Level {0} could not be found. Creating a default one.", levelName)); ILevelData levelData = new LevelData(10, 10); levelData.name = levelName; return(levelData); } FileStream saveFile = File.Open(FullSavePath(levelName), FileMode.Open); BinaryFormatter formatter = new BinaryFormatter(); SerializableLevelData serializableData = (SerializableLevelData)formatter.Deserialize(saveFile); return(serializableData.ToLevelData()); }
ILevelData ILevelSerializer.LoadLevel(string levelName) { if (forceCreateNewLevelOnLoad) { ILevelData newLevelData = new LevelData(10, 10, levelName); newLevelData.owner = "1"; newLevelData.id = 1; return(newLevelData); } string jsonResponse = PersistentAPI.GetRoom(levelName); SerializableLevelData webLevelData = JsonUtility.FromJson <SerializableLevelData>(jsonResponse); ILevelData levelData = webLevelData.ToLevelData(); return(levelData); }