public IEnumerator mainState() { while (true) { Console.WriteLine(this.name + " MAIN STATE PATROL"); yield return(patrol()); // breaks patrol if target found and set Console.WriteLine(this.name + " MAIN STATE FIGHT"); yield return(fight(target)); //dead or other enemy dead if (health.health > 0) { Game.createGameObject(GameObjectFactory.makeDefault("made from " + name)); } } }
static void Main(string[] args) { new Game(new GameObject[] { GameObjectFactory.makeDefault("plane"), GameObjectFactory.makeDefault("tank") }) .start(); new CoRoutineRunner(TimeSpan.FromSeconds(.1f)).run().Wait(); }