public void NewGame() { //InitGameState(); string ID = originalImage.sprite.name; foreach (var panel in imageManager.backgroundPanels) { panel.sprite = backgroundImage.sprite; } if (DataPuzzleState == null) { PuzzleState puzzleState = PuzzlesCreator.CreatePuzzle(gameSettings.lines, gameSettings.columns); puzzleState.puzzleID = ID; DataPuzzleState = new PuzzleStateList(); DataPuzzleState.puzzleStates.Add(puzzleState); currentState = puzzleState; Debug.Log("puzzleCreator"); InitView(puzzleState.puzzleDatas); UIController.GetComponent <UIController>().GoToGameScreen(); } else { bool isInited = false; foreach (var pID in DataPuzzleState.puzzleStates) { if (pID.puzzleID == ID) { currentState = pID; UIController.GetComponent <UIController>().OnContinueScreen(); //затем смотрим чо нажмет и только потом вызываем InitView Debug.Log(pID.puzzleID); //InitView(pID.puzzleDatas); isInited = true; break; } } if (!isInited) { PuzzleState puzState = PuzzlesCreator.CreatePuzzle(gameSettings.lines, gameSettings.columns); puzState.puzzleID = ID; currentState = puzState; DataPuzzleState.puzzleStates.Add(puzState); InitView(puzState.puzzleDatas); UIController.GetComponent <UIController>().GoToGameScreen(); } /*progressCount = InitProgress(currentState); * currentState.progressCount = progressCount;*/ } //UpdateProgress(); //InitView(DataPuzzleState.puzzleStates); //SetAlphaToPuzzles(progressCount); }
public void RefreshData(PuzzleState currentData, PuzzleStateList dataList) { foreach (var dataItem in dataList.puzzleStates) { if (dataItem.puzzleID == currentData.puzzleID) { dataList.puzzleStates.Remove(dataItem); break; } } dataList.puzzleStates.Add(currentData); //currentData = null; }
private void InitGameState() { DataPuzzleState = ToolSaver.Instance.Load <PuzzleStateList>(gameSettings.PathSaves); }