示例#1
0
    private dietType PickBestFood(Hex hab)
    {
        float foodVal = 0;
        dietType bestDiet = diet[0];

        if (diet.Count > 1)
        {
            for (int i = 0; i < diet.Count; i++)
            {
                dietType testDiet = diet[i];

                float food = hab.GetFoodHealth(testDiet);

                if (food > foodVal)
                {
                    foodVal = food;
                    bestDiet = testDiet;
                }
            }
        }

        return bestDiet;
    }
示例#2
0
    public float GetTelegraphFoodScore(Hex habitat)
    {
        float score = 0;

        foreach (specialEffect item in leads)
        {
            float compareScore = 0;
            if (item == specialEffect.CARNO) { compareScore = habitat.GetFoodHealth(Critter.dietType.CARNO); }
            if (item == specialEffect.HERB) { compareScore = habitat.GetFoodHealth(Critter.dietType.HERB); }
            if (item == specialEffect.FISH) { compareScore = habitat.GetFoodHealth(Critter.dietType.FISH); }
            if (item == specialEffect.INSECT) { compareScore = habitat.GetFoodHealth(Critter.dietType.INSECT); }
            if (item == specialEffect.SCAVANGER) { compareScore = habitat.GetFoodHealth(Critter.dietType.SCAV); }

            if (compareScore > score)
            {
                score = compareScore;
            }
        }

        return score;
    }
示例#3
0
    public dietType GetWeakestDiet(Hex hab)
    {
        dietType testdiet = diet[0];
        float val = 0;
        float lowest = 1;

        foreach (dietType item in diet)
        {
            val = hab.GetFoodHealth(item);

            if (val < lowest)
            {
                testdiet = item;
                lowest = val;
            }
        }

        return testdiet;
    }