//TODO: Move to SequenceManager; public void CheckValidation() { Debug.Log("validation: " + sessionData.validationCountNew + " /" + sequenceManager.activeScenario.maxValidations); if (!routeManager.validationEnabled)//CANNOT validate { uiManager.OpenDialogBox("Pas de validation possible."); } //IF CAN VALIDATE (Validations are not limited or there are validations left) else if (!sequenceManager.validationsLimited || (sequenceManager.validationsLimited && sessionData.validationCountNew < sequenceManager.activeScenario.maxValidations)) { validationCount++; // Counts as one validation sessionData.validationCountNew++; Debug.Log("validation: " + sessionData.validationCountNew + " /" + sequenceManager.activeScenario.maxValidations); uiManager.validationCheck = true; // allow UI display //Scenario 1 if (sessionData.selectedScenario == 1) { checkpointManager.CheckpointValidationNew(); //Checkpoints validation } //Scenario 2 else if (sessionData.selectedScenario == 2) { if (sessionData.isSender) //Player is sender { if (sessionData.validationCountNew < sequenceManager.activeScenario.maxValidations) // there are validations left { uiManager.OpenDialogBox("Attend les instructions."); intersectionManager.GotoCoord(sessionData.routeStart.ElementAt(0), sessionData.routeStart.ElementAt(1)); //Place player at start of route NewAttempt(false); attemptCount = 1; } //else //{ // uiManager.OpenDialogBox("(10) Il ne reste plus de validation possible."); // EndSession(); // uiManager.dialogBox.GetComponent<DialogBox>().returnToMenu = true; //return to menu after closing the dialog box //} else { uiManager.OpenDialogBox("C'était la dernière validation. Attend les instructions."); EndSession(false); uiManager.dialogBox.GetComponent <DialogBox>().returnToMenu = true; //return to menu after closing the dialog box } } else // Player is receiver { routeManager.ValidateRoute(intersectionManager.sessionRoute); uiManager.routeValidationText.text = ("Valid = " + routeManager.validationInfo.isValid + " - errorat #: " + routeManager.validationInfo.errorAt + " - endReached= " + routeManager.validationInfo.endReached + " - length: " + routeManager.validationInfo.routeLength); //UI Display only RouteValidationScenario2(); } } //Scenario 3 else if (sessionData.selectedScenario == 3) { routeManager.ValidateRoute(intersectionManager.sessionRoute); uiManager.routeValidationText.text = ("Valid = " + routeManager.validationInfo.isValid + " - errorat #: " + routeManager.validationInfo.errorAt + " - endReached= " + routeManager.validationInfo.endReached + " - length: " + routeManager.validationInfo.routeLength); //UI Display only //saveSessionData.SaveData(); PauseSession(); if (sessionData.validationCountNew >= sequenceManager.activeScenario.maxValidations) //if last attempt { Debug.Log("last attempt"); GlobalControl.instance.returnToMenu = true; endTime = Time.time; sessionEnded = true; sessionData.sessionPaused = false; } GlobalControl.instance.sessionData = sessionData; saveSessionData.stopSavingData(); uiManager.dialogBox.GetComponent <DialogBox>().validateScene = true; //return to menu after closing the dialog box uiManager.OpenDialogBox("VALIDATION PAR IMAGES"); } //Scenario 4 else if (sessionData.selectedScenario == 4) { routeManager.ValidateRoute(intersectionManager.sessionRoute); uiManager.routeValidationText.text = ("Valid = " + routeManager.validationInfo.isValid + " - errorat #: " + routeManager.validationInfo.errorAt + " - endReached= " + routeManager.validationInfo.endReached + " - length: " + routeManager.validationInfo.routeLength); //UI Display only //saveSessionData.SaveData(); PauseSession(); GlobalControl.instance.sessionData = sessionData; uiManager.OpenDialogBox("VALIDATION PAR IMAGES"); saveSessionData.stopSavingData(); uiManager.dialogBox.GetComponent <DialogBox>().validateScene = true; //return to menu after closing the dialog box } else if (sessionData.selectedScenario == 5) //Scenario 5 (no validation) { uiManager.routeValidationText.text = "No validation possible"; } } else { uiManager.OpenDialogBox("Il ne reste plus de validation possible."); } }