/// <summary> /// Instantiates Speed Effect Prefab /// </summary> /// <param name="speedyType">Speedy type.</param> public void ShowSpeedyEffect(QuestionSystemEnums.SpeedyType speedyType) { switch (speedyType) { case QuestionSystemEnums.SpeedyType.Awesome: speedyEffect = SystemResourceController.Instance.LoadPrefab("AwesomeEffect", SystemPopupController.Instance.popUp); speedyEffect.GetComponent <Text>().text = "AWESOME!!"; SystemSoundController.Instance.PlaySFX("SFX_Awesome"); break; case QuestionSystemEnums.SpeedyType.Good: speedyEffect = SystemResourceController.Instance.LoadPrefab("AwesomeEffect", SystemPopupController.Instance.popUp); speedyEffect.GetComponent <Text>().text = "GOOD"; SystemSoundController.Instance.PlaySFX("SFX_correct"); break; case QuestionSystemEnums.SpeedyType.Rotten: speedyEffect = SystemResourceController.Instance.LoadPrefab("RottenEffect", SystemPopupController.Instance.popUp); speedyEffect.GetComponent <Text>().text = "NOT BAD"; SystemSoundController.Instance.PlaySFX("SFX_rotten"); break; } speedyEffect.transform.position = Vector3.zero; if (speedyType.Equals(QuestionSystemEnums.SpeedyType.Awesome)) { TweenFacade.TweenScaleToLarge(speedyEffect.transform, Vector3.one, 1.0f); } }
public QuestionResultModel(int questionId, int timePassed, int numberHints, bool isCorrect, QuestionSystemEnums.SpeedyType speedyType) { this.questionId = questionId; this.timePassed = timePassed; this.numberHints = numberHints; this.isCorrect = isCorrect; this.speedyType = speedyType; }
/// <summary> /// Increases the current QuestionNumber /// /// </summary> /// <param name="isCorrect">If set to <c>true</c> is correct.</param> public void CheckAnswer(bool isCorrect) { idealTime = questionList [currentQuestionNumber].idealTime; if (isCorrect) { QuestionSystemEnums.SpeedyType speedyType = questionRoundTimer.GetSpeedyType(idealTime); ShowSpeedyEffect(speedyType); onQuestionResult(new QuestionResultModel(00000, 13, 3, isCorrect, speedyType)); QuestionFinish(); questionHint.hasHintAvailable = false; Invoke("NextQuestion", 1f); } else { SystemSoundController.Instance.PlaySFX("SFX_mistake"); TweenFacade.TweenShakePosition(gameObject.transform, 1.0f, 30.0f, 50, 90f); } }
public QuestionSystemEnums.SpeedyType GetSpeedyType(double idealTime) { hintInterval = 5; QuestionSystemEnums.SpeedyType speedyType = QuestionSystemEnums.SpeedyType.Good; if (timePassed < idealTime) { speedyType = QuestionSystemEnums.SpeedyType.Awesome; } else if (timePassed >= idealTime) { if (timePassed >= (idealTime * 2)) { speedyType = QuestionSystemEnums.SpeedyType.Rotten; } else { speedyType = QuestionSystemEnums.SpeedyType.Good; } } return(speedyType); }