当前位置: 首页>>代码示例>>C#>>正文


C# Hex.GetVegHealth方法代码示例

本文整理汇总了C#中Hex.GetVegHealth方法的典型用法代码示例。如果您正苦于以下问题:C# Hex.GetVegHealth方法的具体用法?C# Hex.GetVegHealth怎么用?C# Hex.GetVegHealth使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Hex的用法示例。


在下文中一共展示了Hex.GetVegHealth方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: SetFoodRatio

    private float SetFoodRatio(Hex habitat)
    {
        float plantFood = habitat.GetVegHealth();
        float meatFood = habitat.GetMeatHealth();
        float insectFood = habitat.GetInsectHealth();
        float fishFood = habitat.GetFishHealth();
        float wasteFood = habitat.GetWasteRatio();
        float foodRatio = 0.00f;

        if(diet.Contains(dietType.HERB)){
            foodRatio += plantFood + ((1 - plantFood) / 2);
        }
        if(diet.Contains(dietType.CARNO)){
            foodRatio += meatFood + ((1 - meatFood) / 2);
        }
        if(diet.Contains(dietType.FISH)){
            foodRatio += fishFood + ((1 - fishFood) / 2);
        }
        if(diet.Contains(dietType.INSECT)){
            foodRatio += insectFood + ((1 - insectFood) / 2);
        }
        if(diet.Contains(dietType.SCAV)){
            foodRatio += wasteFood + ((1 - wasteFood) / 2);
        }

        foodRatio /= diet.Count;

        if (isPlayer) {
            //print(foodRatio);
        }

        if(foodRatio > 1){
            foodRatio = 1;
        }
        else if(foodRatio < 0){
            foodRatio = 0;
        }

        return foodRatio;
    }
开发者ID:Paulgherve1,项目名称:Critters,代码行数:40,代码来源:Critter.cs

示例2: EatPlants

    //Herbivores energy gain from food
    void EatPlants(Hex habitat)
    {
        float bite = biteSize;
        Hex currentHabitat = habitat;
        float plantFood = currentHabitat.GetLocalPlantFood();

        if(plantFood < (size * bite * currentHabitat.localCritters.Count)){
            bite = bite / 2;
        }
        if(plantFood <= 0){
            bite = 0;
            currentHabitat.SetLocalPlantFood(0);
        }
        else if(plantFood < bite){
            bite = currentHabitat.GetLocalPlantFood();
        }
        if(bite > energy_Needed){
            bite = energy_Needed;
        }

        float food = habitat.GetVegHealth();
        float foodHealth = food + (1 - food) / 2;

        foodTaken += (bite * foodHealth);
        currentHabitat.SetLocalPlantFood((int)(plantFood - foodTaken));

        if(foodTaken * 2 < energy_Needed){
            if(offense > Random.Range(0, 101)){
                foodTaken *= 2;
            }
        }
    }
开发者ID:Paulgherve1,项目名称:Critters,代码行数:33,代码来源:Critter.cs


注:本文中的Hex.GetVegHealth方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。