Exemple #1
0
    public MainActivity Decide()
    {
        if (activityManager.workIsCalled)
        {
            return(MainActivity.Work);
        }
        List <MainActivity> roulette = new List <MainActivity>();

        AddFitnessToRoulette(roulette, MainActivity.PlayVideoGame, playVideoGameFitness);

        if (stats.AllInZone())
        {
            AddFitnessToRoulette(roulette, MainActivity.Work, workFitnessIfInZone);
        }

        if (activityManager.BedIsPrepared())
        {
            AddFitnessToRoulette(roulette, MainActivity.Sleep, bedIsMadeFitness);
        }

        if (activityManager.HasFood())
        {
            AddFitnessToRoulette(roulette, MainActivity.Eat, hasFoodFitness);
        }

        var result = roulette[Random.Range(0, roulette.Count)];

        Logger.Format(result.ToString());
        return(result);
    }