void DropPheromones() { foreach (GameObject pheromoneObj in pheromones) { Pheromone pheromone = pheromoneObj.GetComponent <Pheromone>(); bool drop = false; float strength = 0; switch (pheromone.GetPheromoneType()) { case Pheromone.PheromoneType.Food: if (hasFood) { drop = true; strength = pheromone.GetStartingStrength() - (pheromone.dropRate * foodCount * 2); } break; case Pheromone.PheromoneType.Home: if (!hasFood && !goHome) { drop = true; strength = pheromone.GetStartingStrength() - (pheromone.dropRate * homeCount * 2); } break; } if (strength < 0) { strength = 0; } if (drop) { Debug.Log(strength); GameObject droppedPheromone = Instantiate(pheromoneObj); droppedPheromone.GetComponent <Pheromone>().SetColony(colony); droppedPheromone.GetComponent <Pheromone>().strength = (int)strength; droppedPheromone.transform.position = transform.position; } } }
// Update is called once per frame void Update() { if (!goHome && homeCount > homePheromone.GetStartingStrength() / homePheromone.dropRate / 2.5f) { goHome = true; } life -= 1; if (life < 0) { Destroy(gameObject); } UpdateDirection(); Move(); UpdatePheromones(); }