Ejemplo n.º 1
0
    public bool ConsumeFood(FoodNeed foodNeed)
    {
        if (_foodStack.Count > 0)
        {
            foodNeed.Value += _foodStack.Pop();
            UpdateFoodCount();

            return(true);
        }

        return(false);
    }
Ejemplo n.º 2
0
    // Start is called before the first frame update
    void Start()
    {
        FoodNeed     = new FoodNeed();
        SleepingNeed = new SleepingNeed();
        SocialNeed   = new SocialNeed();
        var newLst = new HashSet <INeed>()
        {
            FoodNeed, SleepingNeed, SocialNeed
        };

        _needLst = newLst.ToList();

        _nextUpdate = UPDATE_INTERVAL;
    }
Ejemplo n.º 3
0
    bool WantsFood(FoodNeed foodNeed)
    {
        var num = 100;

        if (foodNeed.Value <= foodNeed.MaxValue * 0.5)
        {
            num = 50;
        }
        else if (foodNeed.Value <= foodNeed.MaxValue * 0.7)
        {
            num = 80;
        }

        return(Random.Range(0, 100) >= num);
    }
Ejemplo n.º 4
0
 bool DesperateForFood(FoodNeed foodNeed)
 {
     return(foodNeed.Value <= foodNeed.MaxValue * FOOD_STARVING_THRESHHOLD);
 }