Ejemplo n.º 1
0
        public OpdrachtViewModel(Groep groep)
        {
            Groep              = groep;
            NrHuidigeOpdracht  = groep.Pad.GetProgressie()[0];
            NrTotaalOpdrachten = groep.Pad.GetProgressie()[1];

            if (groep.Pad.GetCurrentOpdracht().IsOpgelost)
            {
                PercentageVoltooid = (int)(((double)(NrHuidigeOpdracht) / (double)NrTotaalOpdrachten) * 100);
            }
            else
            {
                PercentageVoltooid = (int)(((double)(NrHuidigeOpdracht - 1) / (double)NrTotaalOpdrachten) * 100);
            }

            Opdracht           = groep.Pad.GetCurrentOpdracht();
            IsTijdsOpdracht    = Opdracht.OpdrachtBepaler is EnumOpdrachtBepaler.TIJD;
            FoutePogingen      = Opdracht.FoutePogingen;
            OpdrachtIsOpgelost = groep.Pad.GetCurrentOpdracht().IsOpgelost;
            Groepsantwoord     = Opdracht.BerekenCorrectAntwoord();

            try
            {
                VolgendeOpdrachtIsToegankelijk = groep.Pad.GetNextOpdracht().IsToegankelijk;
                ToegangscodeVolgendeOpdracht   = groep.Pad.GetNextOpdracht().Toegangscode.Code;
                ActieVolgendeOpdracht          = groep.Pad.GetNextOpdracht().Actie.Omschrijving;
            }
            catch (ArgumentOutOfRangeException) // laatste oefening
            {
                IsLaatsteOefening = true;
            }
        }