public void EatFoodTile() { FoodTile foodTile = agent.currentTile as FoodTile; if (IsHungry() && foodTile.ConsumeFood(agent)) { EatFoodAmount(foodTile.foodEnergy); agent.TriggerLifeEvent("Ate Hay"); timesEatenVeg++; } }
// Food Tiles / Herbivores bool HeadForFoodTile() { MapTile[] foodTiles = agent.currentTile.PassableNeighboringTilesOfTypeForAgent(MapTileType.Food, agent) as MapTile[]; if (foodTiles != null && foodTiles.Length > 0) { FoodTile foodTile = foodTiles[Random.Range(0, foodTiles.Length)] as FoodTile; if (foodTile.CanConsumeFood(agent)) { agent.MoveToTile(foodTile); return(true); } } return(false); }
/// <summary> /// remove food from foods ( sync _spaces ) /// </summary> public void Eat(FoodTile food) { _spaces.Add(food.Location); _h.FoodCanvas.Children.Remove(food); _foods.Remove(food); }