private void SetEvaluation(CaseEvaluation evaluation, Text[] Fields) { for (int i = 0; i < evaluation.EvaluationFields.Length; i++) { Fields[i].text = evaluation.EvaluationFields[i]; } }
private void SendEvaluation(InputField[] inputFields) { ScreenController.SwitchScreenToCompleteEvaluationLoading(); // creates the case evaluation. CaseEvaluation caseEvaluation = new CaseEvaluation() { Id = currentRoleplay.Id, User = isClient ? currentRoleplay.UserA : currentRoleplay.UserB, EvaluationFields = new string[inputFields.Length] }; for (int i = 0; i < inputFields.Length; i++) { caseEvaluation.EvaluationFields[i] = inputFields[i].text; inputFields[i].text = ""; } // Sends the evaluation to the server. string json = JsonUtility.ToJson(caseEvaluation); NetworkMessage evaluationMessage = new NetworkMessage(NetworkMessageType.TransmitEvaluationTest, Manager.ClientId, "", json); Manager.SendMessage(evaluationMessage); CompleteEvaluationController.RequestCompleteEvaluation(caseEvaluation.Id); }
protected override void Update() { base.Update(); if (UnityEngine.Input.GetKeyDown(UnityEngine.KeyCode.C) && UnityEngine.Application.isEditor) { Participant userA = new Participant("TesterA", "1.1.1.1", "devm_9874123"); Participant userB = new Participant("TesterB", "1.1.1.1", "devm_651089"); ConnectToServer(new NetworkMessage(NetworkMessageType.ConnectToServer, userA.Id, "", userA.Name) { SenderIP = userA.IP }); ConnectToServer(new NetworkMessage(NetworkMessageType.ConnectToServer, userB.Id, "", userB.Name) { SenderIP = userB.IP }); Framework.Storage.SaveLoad.Load("LastId", out string id); RoleplayModule module = (RoleplayModule)UnityEngine.Random.Range(0, 1 + (int)RoleplayModule.open_questions); Enqueue(new NetworkMessage(NetworkMessageType.Enqueue, userA.Id, "", module.ToString()) { SenderIP = userA.IP }); Enqueue(new NetworkMessage(NetworkMessageType.Enqueue, userB.Id, "", module.ToString()) { SenderIP = userB.IP }); CaseEvaluation caseEvaluationA = new CaseEvaluation() { User = userA, Id = id, EvaluationFields = new string[2] { "", "" } }; CaseEvaluation caseEvaluationB = new CaseEvaluation() { User = userB, Id = id, EvaluationFields = new string[2] { "", "" } }; TransmitEvaluationTest(new NetworkMessage(NetworkMessageType.TransmitEvaluationTest, userA.Id, "", Framework.Features.Json.JsonUtility.ToJson(caseEvaluationA)) { SenderIP = userA.IP }); TransmitEvaluationTest(new NetworkMessage(NetworkMessageType.TransmitEvaluationTest, userB.Id, "", Framework.Features.Json.JsonUtility.ToJson(caseEvaluationB)) { SenderIP = userB.IP }); } }
public void OnEvaluationAcquired(string serializedEvaluation) { CaseEvaluation caseEvaluation = JsonUtility.FromJson <CaseEvaluation>(serializedEvaluation); string id = caseEvaluation.Id; if (acquiredEvaluations.ContainsKey(id)) { GenerateCompleteEvaluation(id, caseEvaluation); } else { acquiredEvaluations.Add(id, caseEvaluation); } }
private void GenerateCompleteEvaluation(string id, CaseEvaluation caseEvaluation) { // Removes the case from the dictionary. CaseEvaluation other = acquiredEvaluations[id]; acquiredEvaluations.Remove(id); // Converts the stored roleplay to an object. string roleplayJson; string fileName = string.Format(RoleplaySaveName.Value, id); SaveLoad.Load(fileName, out roleplayJson); RoleplayDescription roleplayDescription = JsonUtility.FromJson <RoleplayDescription>(roleplayJson); // serialized the complete evaluation. bool isUserA = id == roleplayDescription.UserA.Id; CompleteCaseEvaluation completeCaseEvaluation = new CompleteCaseEvaluation() { RoleplayDescription = roleplayDescription, EvaluationUserA = isUserA ? caseEvaluation : other, EvaluationUserB = isUserA ? other : caseEvaluation, TimeStamp = DateTime.Now.ToString() }; string completeEvalJson = JsonUtility.ToJson(completeCaseEvaluation); SaveLoad.Save(completeEvalJson, string.Format(CompleteEvaluationName.Value, id)); SendMessageTo(roleplayDescription.UserA, completeEvalJson); SendMessageTo(roleplayDescription.UserB, completeEvalJson); AddIdToUserLog(roleplayDescription.UserA.Id, id); AddIdToUserLog(roleplayDescription.UserB.Id, id); SocialManager.AddToRecentLog(roleplayDescription.UserA, roleplayDescription.UserB); SocialManager.AddToRecentLog(roleplayDescription.UserB, roleplayDescription.UserA); SaveLoad.Remove(fileName); }