void AnimateTerrain(ActivityScore score)
    {
        _transition.SetActive(true);
        _eventTrigger.OnTransitionAreaShown = () => OnActivityTransitionVisible(score);
        var animator = _root.GetComponent <Animator>();

        animator.SetTrigger(Constants.AnimatorEvents.ActivityTransitionAnimation);
    }
        private async Task UpdateInDatabase(WaterfallStepContext stepContext, ActivityScore score)
        {
            var answerState = await AnswersStateAccessor.GetAsync(stepContext.Context, () => null) ?? new AnswerState();

            var todaysAnswers = answerState.Questions.FirstOrDefault(a => a.Day == DateProvider.CurrentDateForBot.Date) ?? new QuestionsData();

            UpdateActivityHandler(score, todaysAnswers);

            await AnswersStateAccessor.SetAsync(stepContext.Context, answerState);
        }
Example #3
0
    public Activity CreateActivity(MissionScore score, ActivityScore activityScore)
    {
        if (activityScore == null)
        {
            return(CreateStartActivity(score));
        }

        var difficulty = CalculateActivityDifficulty(activityScore.NextActivity, activityScore.ActivityResult, activityScore.P);

        return(Instantiate(activityScore.NextActivity, _groupFactory.GetGroup1(), difficulty));
    }
Example #4
0
 public override int GetHashCode()
 {
     unchecked
     {
         int result = base.GetHashCode();
         result = (result * 397) ^ ActivityScore.GetHashCode();
         result = (result * 397) ^ CumulativeStepCount;
         result = (result * 397) ^ DataCount;
         result = (result * 397) ^ Duration.GetHashCode();
         return(result);
     }
 }
    void TurnOnLights(ActivityScore score)
    {
        if (_evaluationLights == null)
        {
            return;
        }

        foreach (var light in _evaluationLights)
        {
            light.TurnOnLight(score);
        }
    }
Example #6
0
    public void ChangeProgress(ActivityScore newScore)
    {
        if (newScore.ActivityResult.ActivityType != _currentlyShownType)
        {
            _currentlyShownType = newScore.ActivityResult.ActivityType;
        }

        var renderer = PrepareSprites(_currentlyShownType);

        StartCoroutine(AnimateProgress(renderer, _currentlyShownScore, newScore.NewMissionScore.Value));

        _currentlyShownScore = newScore.NewMissionScore.Value;
    }
Example #7
0
    public void TurnOnLight(ActivityScore score)
    {
        _blink = false;
        switch (score.P)
        {
        case P.Detoriated:
            _renderer.sprite = BadSprite;
            break;

        default:
            _renderer.sprite = GoodSprite;
            break;
        }
    }
    public void Enable(ActivityScore score)
    {
        if (_enabled)
        {
            TurnOnLights(score);
            return;
        }

        _enabled = true;

        var camera             = GameObject.FindObjectOfType <CameraMovement>();
        var evaluationPosition = _manager.EvaluationMark.position;

        _ressi.Movement.MoveToPosition(evaluationPosition, OnRessiAtEvaluationPosition);
        camera.SetTargetX(evaluationPosition.x, targetReached: () => AnimateTerrain(score));
    }
    public void FinishActivity(ActivityScore score, Action onComplete)
    {
        _skeletonAnimation.Skeleton.FlipX = false;
        AnimationWithSound animation;

        var onCompleteSubscription = new AnimationEventSubscriptions {
            OnComplete = onComplete
        };

        switch (score.P)
        {
        case P.Detoriated:
            animation = Parameters.WorseEvaluation;
            break;

        default:
            animation = Parameters.BestEvaluation;
            break;
        }
        PlayTransientAnimation(animation, onCompleteSubscription);
    }
Example #10
0
 protected override void UpdateActivityHandler(ActivityScore score, QuestionsData todaysAnswers)
 {
     todaysAnswers.FoodScore = score;
 }
 public void FinishActivity(ActivityScore score, Action onAnimationComplete = null)
 {
     PauseTouchInput();
     Animator.FinishActivity(score, ResumeTouchAfterAnimation(onAnimationComplete));
 }
 void UpdateProgressbar(ActivityScore score)
 {
     _progressbar.ChangeProgress(score);
 }
 bool ShouldShowActivityTransition(ActivityScore score)
 {
     return(score.NextActivity != score.ActivityResult.ActivityType);
 }
 void OnActivityTransitionVisible(ActivityScore score)
 {
     TurnOnLights(score);
     _ressi.FinishActivity(score);
 }
 protected abstract void UpdateActivityHandler(ActivityScore isPositiveAnswer, QuestionsData todaysAnswers);