void AIControlPlayer() { if (!target.alive) { for (int i = 0; i < GeneticAlien._instance.GetAlienList().Count; i++) { print("searching for an alien"); var _alien = GeneticAlien._instance.GetAlienList()[i].GetComponent <GeneticAlien.Alien>(); if (_alien.alive) { target = _alien; break; } } } else { if (transform.position.x < (target.instance.transform.position.x - 0.15f)) { horizontalInput = 1; } else if (transform.position.x > (target.instance.transform.position.x + 0.15f)) { horizontalInput = -1; } if (fireTimer >= 1f) { shootInput = true; Fire(); fireTimer = 0; } } }
public DNA(int _genomeLength, Func <char[]> getRandomGene, Func <int, float> fitnessFunction, GeneticAlien.Alien owner, bool initGenes = true) { GetRandomGene = getRandomGene; FitnessFunction = fitnessFunction; random = new System.Random(); Owner = owner; if (initGenes) { genes.Clear(); for (int i = 0; i < _genomeLength; i++) { genes.Add(getRandomGene()); } } }
public void ResetPlayerAI() { target = new GeneticAlien.Alien(); }