void Start() { interactionController = GetComponent <InteractionController>(); GameEventMessage.AddListener((GameEventMessage message) => onGameMessage(message.EventName)); if (SaveGameSystem.DoesSaveGameExist(saveGameName)) { var success = loadIsland(); if (!success) { Debug.Log("failed to load saved island"); onWinterSettingsSelected(); spawnInitialSheep(); startGameButton.text = "Start"; } else { SheepAgent[] allSheep = FindObjectsOfType <SheepAgent>(); if (allSheep.Length == initialSheepCount) { startGameButton.text = "Start"; } else { startGameButton.text = "Continue"; } } } else { onWinterSettingsSelected(); spawnInitialSheep(); startGameButton.text = "Start"; } }
private bool loadIsland() { var saveGame = SaveGameSystem.LoadGame(saveGameName); if (saveGame == null) { return(false); } try { foreach (var value in saveGame.sheepData) { spawnSheep(value.level, value.voice); } isSpring = saveGame.isSpring; if (isSpring) { onSpringSettingsSelected(); } else { onWinterSettingsSelected(); } } catch (NullReferenceException e) { Debug.Log("invalid save file"); SaveGameSystem.DeleteSaveGame(saveGameName); return(false); } return(true); }
void Start() { interactionController = GetComponent <InteractionController>(); uiController = GetComponent <UIController>(); worldManager = GetComponent <WorldManager>(); bool saveLoaded = false; if (SaveGameSystem.DoesSaveGameExist(saveGameName)) { Debug.Log("Loading save"); saveLoaded = loadIsland(); if (!saveLoaded) { Debug.Log("failed to load saved island"); } } if (!saveLoaded) { Debug.Log("Creating new island"); initialiseWorld(); } uiController.setSaveGameExists(saveLoaded); // TODO: port ui controls over from sheep isle // GameEventMessage.AddListener((GameEventMessage message) => onGameMessage(message.EventName)); }
private bool saveIsland() { SheepAgent[] allSheep = FindObjectsOfType <SheepAgent>(); SaveGame.SheepData[] sheepLevels = allSheep.Select(sheep => new SaveGame.SheepData(sheep.foodEaten, sheep.getVoice())).ToArray(); SaveGame saveGame = new SaveGame(); saveGame.sheepData = sheepLevels; return(SaveGameSystem.SaveGame(saveGame, saveGameName)); }
private bool loadIsland() { // TODO: restore entire world from save var saveGame = SaveGameSystem.LoadGame(saveGameName); if (saveGame == null) { return(false); } try { foreach (var value in saveGame.sheepData) { // spawnSheep(value.level, value.voice); } } catch (NullReferenceException) { Debug.Log("invalid save file"); SaveGameSystem.DeleteSaveGame(saveGameName); return(false); } return(true); }