// Use this for initialization void Awake() { if (GameSettings.SOLO) { objTimer.SetActive(false); } scrTimer = objTimer.GetComponent <TimerUI>(); if (GameInfoInsert.currentRoundTimeLeft != 0) { timeToNextGame = GameInfoInsert.currentRoundTimeLeft; GameInfoInsert.currentRoundTimeLeft = 0; } else { timeToNextGame = GameInfoInsert.info.round_duration_ms; } GameInfoInsert.SetNewRound(); scrPrWPre = previewWordObj.GetComponent <PreviewWordPrefab>(); whatSortText = whatSortObj.GetComponent <Text>(); }
void Thematic(string json, bool current) { string choice = GameInfoThematic.info.game_type.ToLower(); switch (choice) { case GameSettings.GAME_MODE_CHOOSE: GameSettings.MyDebug("GAME_MODE_CHOOSE"); GameInfoChoose.SetRoundStartInfo(json, current); GameSettings.CURRENT_MODE = GameSettings.GAME_MODE_CHOOSE; break; case GameSettings.GAME_MODE_DRAG: GameSettings.MyDebug("GAME_MODE_DRAG"); GameInfoDrag.SetRoundStartInfo(json, current); GameSettings.CURRENT_MODE = GameSettings.GAME_MODE_DRAG; break; case GameSettings.GAME_MODE_INSERT: GameSettings.MyDebug("GAME_MODE_INSERT"); GameInfoInsert.SetRoundStartInfo(json, current); GameSettings.CURRENT_MODE = GameSettings.GAME_MODE_INSERT; break; } }
/*public void SendWordSelectionAllRounds() * { * string url = GameSettings.POSTPublishScoreURL + GameSettings.username + "&type=" + GameSettings.selected_mode; * sfAll.cycle_id = GameInfo.info.cycle_id; * * if (GameSettings.selected_mode.Equals(GameSettings.MODE_CHOOSE)) * { * FillScoreFormAllRoundForChoose(sfAll); * } else if(GameSettings.selected_mode.Equals(GameSettings.MODE_DRAG)) * { * FillScoreFormAllRoundForDrag(sfAll); * } else if(GameSettings.selected_mode.Equals(GameSettings.MODE_INSERT)) * { * FillScoreFormAllRoundForInsert(sfAll); * } * * string json = JsonUtility.ToJson(sfAll); * GameSettings.MyDebug(json); * * StartCoroutine(PostRequest(url, json)); * }*/ /*void FillScoreFormAllRoundForChoose(ScoreFormAll sf) * { * for (int i = 0; i < GameInfo.info.number_of_rounds; i++) * { * sf.words[i] = new WordFormAll(); * sf.words[i].word = GameInfo.info.words[i].word; * sf.words[i].buttons = new string[GameInfo.info.max_select]; * for (int j = 0; j < GameInfo.info.max_select; j++) * { * sf.words[i].buttons[j] = GameInfo.selectedWords[i, j]; * } * } * }*/ /*void FillScoreFormAllRoundForDrag(ScoreFormAll sf) * { * for (int i = 0; i < 2*GameInfo.info.number_of_rounds; i++) * { * sf.words[i] = new WordFormAll(); * sf.words[i].word = GameInfo.info.words[i].word; * sf.words[i].buttons = new string[GameInfo.info.buttons_number]; * for (int j = 0; j < GameInfo.info.buttons_number; j++) * { * sf.words[i].buttons[j] = GameInfo.selectedWords[i, j]; * } * * * } * }*/ /*void FillScoreFormAllRoundForInsert(ScoreFormAll sf) * { * for (int i = 0; i < GameInfo.info.number_of_rounds; i++) * { * sf.words[i] = new WordFormAll(); * sf.words[i].word = GameInfo.info.words[i].word; * sf.words[i].buttons = new string[GameInfo.info.max_select]; * for (int j = 0; j < GameInfo.info.max_select; j++) * { * sf.words[i].buttons[j] = GameInfo.selectedWords[i, j]; * } * } * }*/ IEnumerator PostRequest(string url, string json) { var uwr = new UnityWebRequest(url, "POST"); byte[] jsonToSend = new System.Text.UTF8Encoding().GetBytes(json); uwr.uploadHandler = (UploadHandler) new UploadHandlerRaw(jsonToSend); uwr.downloadHandler = (DownloadHandler) new DownloadHandlerBuffer(); uwr.certificateHandler = new AcceptAllCertificatesSignedWithASpecificKeyPublicKey(); uwr.SetRequestHeader("Content-Type", "application/json"); { //Send the request then wait here until it returns uwr.timeout = 5; yield return(uwr.SendWebRequest()); if (uwr.isNetworkError || uwr.isHttpError) { if (uwr.isHttpError) { SceneSwitcher.LoadScene2Back2(GameSettings.COMPETITIVE_MODE_SELECTION_MENU); } else { StartCoroutine(PostRequest(url, json)); GameSettings.MyDebug("Error While Sending: " + uwr.error); } } else { if (GameSettings.THEMATIC) { GameSettings.numberOfPlayedRounds += 1; } RecInfo recInfo = new RecInfo(); recInfo = JsonUtility.FromJson <RecInfo>(uwr.downloadHandler.text); GameSettings.MyDebug("Received: " + uwr.downloadHandler.text); /*int output = System.Int32.Parse(Regex.Replace(recInfo.success, "[^0-9]+", string.Empty)); * GameInfoInsert.score = output;*/ if (GameSettings.CURRENT_MODE.Equals(GameSettings.GAME_MODE_INSERT)) { GameInfoInsert.SetRoundOverInfo(uwr.downloadHandler.text); GameSettings.MyDebug(JsonUtility.ToJson(GameInfoInsert.rec)); } if (GameSettings.CURRENT_MODE.Equals(GameSettings.GAME_MODE_SYNONYM)) { GameInfoSynonym.SetRoundOverInfo(uwr.downloadHandler.text); GameSettings.MyDebug(JsonUtility.ToJson(GameInfoSynonym.rec)); } dataReceived = true; } } }
IEnumerator GetRequest(string url, string chosenMode, bool current) { UnityWebRequest uwr = UnityWebRequest.Get(url); GameSettings.MyDebug(url); uwr.certificateHandler = new AcceptAllCertificatesSignedWithASpecificKeyPublicKey(); uwr.timeout = 5; yield return(uwr.SendWebRequest()); if (uwr.isNetworkError) { dataFailed = true; GameSettings.MyDebug("Error While Sending: " + uwr.error); } else { GameSettings.MyDebug("Received: " + uwr.downloadHandler.text); switch (chosenMode) { case GameSettings.GAME_MODE_CHOOSE: if (!current) { GameInfoChoose.SetRoundStartInfo(uwr.downloadHandler.text, false); } else { GameInfoChoose.SetRoundStartInfo(uwr.downloadHandler.text, true); } GameSettings.CURRENT_MODE = GameSettings.GAME_MODE_CHOOSE; break; case GameSettings.GAME_MODE_INSERT: if (!current) { GameInfoInsert.SetRoundStartInfo(uwr.downloadHandler.text, false); } else { GameInfoInsert.SetRoundStartInfo(uwr.downloadHandler.text, true); } GameSettings.CURRENT_MODE = GameSettings.GAME_MODE_INSERT; break; case GameSettings.GAME_MODE_SYNONYM: if (!current) { GameInfoSynonym.SetRoundStartInfo(uwr.downloadHandler.text, false); } else { GameInfoSynonym.SetRoundStartInfo(uwr.downloadHandler.text, true); } GameSettings.CURRENT_MODE = GameSettings.GAME_MODE_SYNONYM; break; case GameSettings.GAME_MODE_DRAG: if (!current) { GameInfoDrag.SetRoundStartInfo(uwr.downloadHandler.text, false); } else { GameInfoDrag.SetRoundStartInfo(uwr.downloadHandler.text, true); } GameSettings.CURRENT_MODE = GameSettings.GAME_MODE_DRAG; break; case GameSettings.GAME_MODE_THEMATIC: if (!current) { GameSettings.MyDebug(uwr.downloadHandler.text); if (uwr.downloadHandler.text.Length > 0) { GameInfoThematic.SetRoundStartInfo(uwr.downloadHandler.text, false); Thematic(uwr.downloadHandler.text, false); } } else { GameSettings.MyDebug(uwr.downloadHandler.text); if (uwr.downloadHandler.text.Length > 0) { GameInfoThematic.SetRoundStartInfo(uwr.downloadHandler.text, true); Thematic(uwr.downloadHandler.text, true); } } break; } if (!current) { dataReceived = true; } if (current) { dataReceivedCurrent = true; } /* * Cancel connection if thematic is wrong (for safety reasons, if users try * to do stuff without internet and such stuff...) */ if (GameSettings.THEMATIC) { if (GameInfoThematic.info.thematic_name == null || GameInfoThematic.info.thematic_name.Length == 0) { dataReceived = false; dataReceivedCurrent = false; } else if (GameInfoThematic.info.current_time < GameInfoThematic.info.start_of_thematic) { dataReceived = false; dataReceivedCurrent = false; } else if (GameInfoThematic.info.next_round >= GameInfoThematic.info.number_of_rounds) { dataReceived = false; dataReceivedCurrent = false; } } } }