private void Start() { playerMonoBehaviour = playerMonoBehaviour ?? GameObject.FindObjectOfType <PlayerMonoBehaviour>(); obstacleManager = GetComponent <ObstacleManager>(); // TODO Vector3 destinationPosition = FindDestinationPoint(); directionTransform = uiDirection.transform as RectTransform; var directionArrowUi = new UiDirectionArrow( directionTransform, destinationObj.transform, playerMonoBehaviour.PlayerModel, Screen.width, Screen.height / 5); var textUiManager = new UiTextManager(playerMonoBehaviour.PlayerModel, uiTimeText, uiHappinessText); uiManager = new UiManager(textUiManager, directionArrowUi); ScreenManager = new ScreenManager(screens); saver = new BinarySaver(); SavedScores = saver.Load <Scores>() ?? new Scores(); FillStates(); SetGameState(gameStateType); //TODO: Assert game states - to have all value implemented Debug.Log("End of Start method"); }
public void SetSaver(ISaver saver) { _saver = saver; foreach (var save in _saver.GetAll) { var sceneData = _saver.Load(save); Add(sceneData.Info); } }
public void Load() { foreach (var data in _datas) { if (data is IUpdatable) { ControllersUpdater.RemoveUpdate((IUpdatable)data); } var item = data; _saver.Load(ref item, _folderPath); } Loaded.Invoke(); }
public AllLevels GetLevels(ISaver saver, Preset[] levelPresets) { int lastID = -1; LevelParameters[] param = new LevelParameters[levelPresets.Length]; SavingParametersContainer spc; bool hasData = saver != null && saver.HasData(); if (hasData) { spc = saver.Load(); } else { spc = new SavingParametersContainer(); spc.SavingParameters = new SavingParameters[0]; } bool find = false; for (int i = 0; i < param.Length; ++i) { param[i] = new LevelParameters(); param[i].Preset = levelPresets[i]; find = false; for (int j = 0; j < spc.SavingParameters.Length; ++j) { if (spc.SavingParameters[j].ID == param[i].Preset.ID) { param[i].SavedParameters = spc.SavingParameters[j]; find = true; break; } } if (!find) { param[i].SavedParameters = GenerateLevel(param[i].Preset.ID); } if (lastID < param[i].Preset.ID) { lastID = param[i].Preset.ID; } } if (!hasData) { SetFirstOpen(param); } return(new AllLevels(param, lastID)); }
private void OnLoadRequested(string save) { var sceneData = _saver.Load(save); foreach (var item in sceneData.Items) { foreach (var obj in _objects) { if (obj.Id == item.Id) { obj.Set(new InteractableData() { Position = item.Position, Rotation = item.Rotation }); } } } }
protected T Load <T>(string fileName) where T : class { return(saver.Load <T>(fileName)); }