Exemplo n.º 1
0
 public CompletableDataControl(Completable completable)
 {
     this.completable         = completable;
     this.startDataControl    = new MilestoneDataControl(completable.getStart());
     this.endDataControl      = new MilestoneDataControl(completable.getEnd());
     this.progressDataControl = new ProgressDataControl(completable.getProgress());
     this.scoreDataControl    = new ScoreDataControl(completable.getScore());
 }
Exemplo n.º 2
0
        public CompletableController(Completable completable)
        {
            this.Completable = completable;

            this.startController = new MilestoneController(completable.getStart());
            this.endController   = new MilestoneController(completable.getEnd());

            this.progressControllers = completable
                                       .getProgress()
                                       .getMilestones()
                                       .ConvertAll(c => new MilestoneController(c));
        }
Exemplo n.º 3
0
        public bool UpdateMilestones(IChapterTarget target)
        {
            if (completed)
            {
                return(false);
            }

            if (completeOnExit && target.getId() != Start.Milestone.getId())
            {
                completed = true;
                CompletablesController.Instance.TrackCompleted(this, DateTime.Now - startTime);
            }
            else
            {
                var wasStarted = Started;
                completed = UpdateMilestones(milestone => milestone.Update(target));
                if (wasStarted != Started && Completable.getEnd() == null)
                {
                    completeOnExit = true;
                }
            }

            return(completed);
        }