public IEnumerator InitializeGame(int _idLevel, int _idTheme) { FirebaseManager.instance.LogStartLevel(_idLevel, DataController.themeData[_idTheme].name); isInitializeComplete = false; EventManager.TriggerEvent("DestroyPiece"); //curThemeData = DataController.themeData[_idLevel]; idLevel = _idLevel; //idLevel = GameData.GetCurrentLevelByTheme(GameData.Theme); idTheme = _idTheme; //Debug.LogError(level); //curThemeData = DataController.Instance.themeData; //if ( level < curThemeData.groupLevel.Length) //{ // curLevelData = curThemeData.groupLevel[level]; //} //else //{ // level = curThemeData.groupLevel.Length - 1; // GameData.SetCurrentLevelByTheme(GameData.Theme, level); // curLevelData = curThemeData.groupLevel[curThemeData.groupLevel.Length-1]; //} if (idLevel < DataController.themeData[idTheme].levelCount) { curLevelData = DataController.LoadLevelData(_idTheme, _idLevel); } else { idLevel = DataController.themeData[idLevel].levelCount - 1; curLevelData = DataController.LoadLevelData(_idTheme, _idLevel); // GameData.SetCurrentLevelByTheme(GameData.Theme, level); // curLevelData = curThemeData.groupLevel[curThemeData.groupLevel.Length-1]; } sizeLevel = DataController.themeData[idTheme].size; SetCamPosition(sizeLevel); yield return(new WaitForEndOfFrame()); curSampleAnswer = DataController.LoadSampleAnswer(curLevelData.sampleIndex, sizeLevel); listTexture = LoadTextureFromLevel(curLevelData.idLevel, DataController.themeData[_idTheme].name, sizeLevel); //listSamples = LoadSample(curLevelData.sampleIndex); listSamples = LoadSample(curSampleAnswer.pieceNames); numMove = listSamples.Count + Mathf.CeilToInt(0.3f * listSamples.Count); numPiecesWrong = listSamples.Count; listAnswerForSample = CreateAnswerForSample(new Queue <int>(curSampleAnswer.answers)); randIndexPiece = RandomStackInt(0, listSamples.Count); SetCorrectPiecePos(SpawnRadomPieces(points[0].position), points[0].position, 0); for (int i = 1; i < 3; i++) { SpawnRadomPieces(points[i].position); } isInitializeComplete = true; //WinPanel.instance.SetImageReview(listTexture[listTexture.Count - 1]); }
public void CreateJson(bool _isOverride) { string _path = Path.Combine(answerPath, size.ToString() + "x" + size.ToString()); List <int> _finalAnswers = new List <int>(); SampleAnswer _answer = new SampleAnswer(); string _strData = "["; //Debug.LogError(_path); _answer.idAnswer = nameAnswerFile; _answer.pieceNames = new int[listSample.Count]; //_answer.answers = new int[listSample.Count * 3]; for (int i = 0; i < listSample.Count; i++) { _answer.pieceNames[i] = System.Int32.Parse(listSample[i].name); _finalAnswers.Add(i); _finalAnswers.Add(Mathf.RoundToInt(allPieces.transform.GetChild(i).position.x)); _finalAnswers.Add(Mathf.RoundToInt(allPieces.transform.GetChild(i).position.y)); } _answer.answers = _finalAnswers.ToArray(); _strData += "\n" + JsonUtility.ToJson(_answer, true); _strData += "]"; //Debug.Log(_strData); //Directory.CreateDirectory(_path); if (!Directory.Exists(_path)) { Directory.CreateDirectory(answerPath); Debug.Log("<color=green>Create Directory</color>"); } if (!_isOverride) { if (!File.Exists(_path + "/" + nameAnswerFile + jsonSuffix)) { File.WriteAllText(_path + "/" + nameAnswerFile + jsonSuffix, _strData); Debug.Log("<color=green>: CREATE file complete </color>" + nameAnswerFile); CreateLevelJson(idLevel, idTheme, nameAnswerFile); } else { Debug.Log("<color=red>Exis file: </color>" + size.ToString() + "x" + size.ToString() + "/" + nameAnswerFile + ":Try to UPDATE"); } } else { File.WriteAllText(_path + "/" + nameAnswerFile + jsonSuffix, _strData); CreateLevelJson(idLevel, idTheme, nameAnswerFile); Debug.Log("<color=green>: UPDATE file complete </color>" + nameAnswerFile); } }
public void CreateAnswer() { levelData = LoadLevelJson(idLevel); //Debug.LogError(levelData); if (levelData != null) { nameAnswerFile = levelData.sampleIndex; } checkSampleAnswer = LoadAnswerJson(nameAnswerFile); if (checkSampleAnswer != null) { listAnswerForSample = UpdateListAnswerforSample(new Queue <int>(checkSampleAnswer.answers)); listSample = LoadSample(checkSampleAnswer.pieceNames); } else { Debug.LogError("Not Exist json"); return; } }