Ejemplo n.º 1
0
 /* Public interface methods */
 public QuizGame(ProblemWritter problemWritter)
 {
     this.Rand = new Random();
     this.IsStarted = false;
     this.ProblemWritter = problemWritter;
     this.QuestionTypeList = GetQuestionKindList(problemWritter); // Abstract Implementation
 }
Ejemplo n.º 2
0
 public static List<IQuestion> getListOfAllKinds(ProblemWritter pw)
 {
     var kinds = new List<IQuestion>();
     kinds.Add(new Summation(pw));
     kinds.Add(new Substraction(pw));
     kinds.Add(new DoubleMult(pw));
     kinds.Add(new Multiplication(pw));
     return kinds;
 }
Ejemplo n.º 3
0
 /* Public interface methods */
 public MathQuizGame(ProblemWritter pw)
     : base(pw)
 {
     SetDefaultParameterValues();
     InitializeTimer();
     // Assigning behavior through events;
     this.AnsweredCorrectly += IncreaseScore;
     this.AnsweredCorrectly += AddTime;
     this.AnsweredWrong += DecreaseScore;
 }
Ejemplo n.º 4
0
 protected abstract List<IQuestion> GetQuestionKindList(ProblemWritter pw);
Ejemplo n.º 5
0
 public Summation(ProblemWritter problemWritter)
     : base(problemWritter)
 {
 }
Ejemplo n.º 6
0
 public Substraction(ProblemWritter problemWritter)
     : base(problemWritter)
 {
 }
Ejemplo n.º 7
0
 public Multiplication(ProblemWritter problemWritter)
     : base(problemWritter)
 {
 }
Ejemplo n.º 8
0
 public DoubleMult(ProblemWritter problemWritter)
     : base(problemWritter)
 {
 }
Ejemplo n.º 9
0
 /* Abstract method implementation */
 protected override List<IQuestion> GetQuestionKindList(ProblemWritter pw)
 {
     return MathProblemFactory.getListOfAllKinds(pw);
 }
Ejemplo n.º 10
0
 public MathProblem(ProblemWritter problemWritter)
 {
     this.ProblemWritter = problemWritter;
     Rand = new Random();
 }