protected override void EnemyStart() { weapon = new NormalCannon(this); Node root = new MemPriority ( new Node[] { new MemSequence ( new Node[] { new TargetOnSight(fieldOfView), new WillShoot(5.0f, 10.0f, 30), new MemSequence ( new Node[] { new XAction<CastAttack>(), new XAction<Aim>(0.8f), new XAction<Shoot>() } ) } ), new MemProbabilistic ( new Node[] { new MemSequence ( new Node[] { new WaitRandom(0.2f, 1.0f), new XAction<RandomMovement>(5.0f) } ), new MemSequence ( new Node[] { new WaitRandom(0.7f, 2.0f) } ), } ), } ); behaviourTree = new BehaviourTree.Tree(root); }
// Use this for initialization protected override void EnemyStart() { weapon = new NormalCannon(this); Node root = new Priority ( new Node[] { new MemProbabilistic ( new Node[] { new MemSequence ( new Node[] { //new ChangeColor(Color.blue), new WaitRandom(0.2f, 1.0f), new XAction<RandomMovement>(5.0f) } ), new MemSequence ( new Node[] { //new ChangeColor(Color.red), new WaitRandom(0.7f, 3.0f) } ), new MemSequence ( new Node[] { new XAction<CastAttack>(), new XAction<Aim>(0.8f), new XAction<Shoot>() } ), } ), } ); behaviourTree = new BehaviourTree.Tree(root); }