private IEnumerator PostResult(PlayerResultModel result, Action onOk, Action onFail) { var json = JsonUtility.ToJson(result); Debug.Log(json); byte[] bJson = Encoding.UTF8.GetBytes(json); UnityWebRequest www = UnityWebRequest.Post(string.Format("{0}:{1}/api/leaderboard", _serverPath, _port), string.Empty); www.uploadHandler = new UploadHandlerRaw(bJson); www.SetRequestHeader("Content-Type", "application/json"); yield return(www.SendWebRequest()); if (www.isNetworkError || www.responseCode != 200) { StartCoroutine(ShowError(www.error)); onFail(); } else { Debug.Log(www.responseCode); onOk(); } _postResultsCoroutine = null; }
public void PostResults(PlayerResultModel result, Action onOk, Action onFail) { if (_postResultsCoroutine == null) { _postResultsCoroutine = StartCoroutine(PostResult(result, onOk, onFail)); } }
private void PostResults() { var endTime = DateTime.UtcNow; var resultDateTime = endTime - _startTime; float resultTime = (float)resultDateTime.TotalSeconds; PlayerResultModel result = new PlayerResultModel(id.ToString(), _wins, resultTime); _leaderboardController.PostResults(result, PostOK, PostFail); }
public IActionResult Post([FromBody] PlayerResultModel newResult) { if (newResult == null) { return(NotFound()); } _leaderboard.AddResult(newResult); return(Ok()); }
public static void SavePlayerResult(PlayerResultModel playerResult) { using (var writer = new StreamWriter(LeaderboardFilePath, true)) { var writeString = $"{playerResult.Name};{playerResult.TimeResult};{playerResult.Score};{playerResult.MaxScore};{playerResult.TimeStart}"; for (int i = 1; i <= ApplicationViewModel.Instance.StatisticsManager.NumberOfItems; i++) { var clickedCount = ApplicationViewModel.Instance.StatisticsManager.SoundStatistics[i].ClickedCount; var isCorrectZeroOne = Convert.ToInt32(ApplicationViewModel.Instance.StatisticsManager.ImageStatistics[i].IsCorrect); writeString += $";{clickedCount};{isCorrectZeroOne}"; } writer.WriteLine(writeString); } }