예제 #1
0
 IEnumerator EatPlant(FoliageFoodSource plant)
 {
     while (!Physics.OverlapSphere(transform.position, 1f).Contains(plant.GetComponent <Collider>()))
     {
         navAgent.SetDestination(plant.transform.position);
         yield return(new WaitForSeconds(1f));
     }
     while (Nutrition < maxNutrition && plant.remainingNutrition != 0)
     {
         if (plant.remainingNutrition < 0.01f)
         {
             Nutrition += plant.remainingNutrition;
             plant.remainingNutrition = 0;
         }
         else
         {
             Nutrition += 0.01f;
             plant.remainingNutrition -= 0.01f;
             yield return(null);
         }
     }
     plant.Release();
     activity = CreatureActivity.Idle;
     yield break;
 }
예제 #2
0
    public override void OnInspectorGUI()
    {
        DrawDefaultInspector();

        FoliageFoodSource foodSource = (FoliageFoodSource)target;

        if (GUILayout.Button("Refill"))
        {
            foodSource.remainingNutrition = foodSource.baseNutrition;
        }

        if (GUILayout.Button("Empty"))
        {
            foodSource.remainingNutrition = 0f;
        }
    }