public void SetMvmtTree(MOVEMENT_TREE type) { mvmtBrain.ClearTasks(); switch (type) { case MOVEMENT_TREE.DEFAULT: mvmtTree = defaultMvmtTree; mvmtTracker = Moving.NOT_MOVING_ON_ASTAR; mvmtBrain.AddTask(mvmtTree); break; case MOVEMENT_TREE.DEFENSE: mvmtTree = defenseMvmtTree; mvmtTracker = Moving.NOT_MOVING_ON_ASTAR; mvmtBrain.AddTask(mvmtTree); break; case MOVEMENT_TREE.ASTAR: mvmtTree = aStarTree; mvmtTracker = Moving.MOVING_ON_ASTAR; mvmtBrain.AddTask(mvmtTree); break; case MOVEMENT_TREE.AGGRESSIVE: break; case MOVEMENT_TREE.SEARCHING: break; } }
public Sequence_MoveToDefense(HiveOfSurvivors hivemind) { select = new BT_Selector(); select.AddTask(new Task_WaitOnCurrEnemies()); runThru = new BT_Sequence(); runThru.AddTask(new Task_CallDefenseUpdate(hivemind)); runThru.AddTask(new Task_MoveToDefensePoint()); select.AddTask(runThru); children.Add(select); //children.Add(runThru); //children.Add(new Task_CallDefenseUpdate(hivemind)); //children.Add(new Task_MoveToDefensePoint()); }
public Task_AStarTree() { aStarTree = new BT_Sequence(); runThroughAStar = new BT_Sequence(); aStarFinished = new BT_Selector(); aStarTree.AddTask(new Task_AStar()); aStarTree.AddTask(runThroughAStar); runThroughAStar.AddTask(new Task_CheckNodeList()); runThroughAStar.AddTask(new Task_MoveToLocation()); runThroughAStar.AddTask(aStarFinished); aStarFinished.AddTask(new Task_CheckNodeList()); aStarFinished.AddTask(new Task_SwitchTree()); }
void CreateMultiGunBT() { findEnemyBrain = new BT_Selector(); chooseGun = new BT_Selector(); //* purchasingTree = new BT_Selector(); runThroughPurchases = new BT_Sequence(); btBrain.AddTask(purchasingTree); purchasingTree.AddTask(new Task_CheckIfInBreakTime()); purchasingTree.AddTask(runThroughPurchases); runThroughPurchases.AddTask(new Task_BuyGate()); runThroughPurchases.AddTask(new Task_BuySurvivor()); runThroughPurchases.AddTask(new Task_BuyTower()); runThroughPurchases.AddTask(new Task_BuyShotgunAmmo()); //runThroughPurchases.AddTask(new Task_BuyRifleAmmo()); runThroughPurchases.AddTask(new Task_BuySniperAmmo()); runThroughPurchases.AddTask(new Task_BuyRifleAmmo()); //runThroughPurchases.AddTask(new Sequence_MoveToDefense(hiveRef)); //*/ btBrain.AddTask(findEnemyBrain); btBrain.AddTask(new Task_GetDistFromEnemy()); btBrain.AddTask(chooseGun); btBrain.AddTask(new Task_FireGun()); //btBrain.AddTask(new Task_ThrowGrenade()); //btBrain.AddTask(new Task_FleeBasic()); //btBrain.AddTask(new Task_Charge()); //btBrain.AddTask(new Task_FleeBunnyHord()); //findEnemyBrain.AddTask(new Task_FindClosestWorstEnemy()); findEnemyBrain.AddTask(new Task_FindClosestBear()); findEnemyBrain.AddTask(new Task_FindHellephant()); findEnemyBrain.AddTask(new Task_FindClosestEnemy()); chooseGun.AddTask(new Task_SwitchToGrenade()); chooseGun.AddTask(new Task_SwitchToShotgun()); chooseGun.AddTask(new Task_SwitchToSniper()); chooseGun.AddTask(new Task_SwitchToRifle()); chooseGun.AddTask(new Task_SwitchToPistol()); }
void CreateAStarBT() { aStarTree = new BT_Sequence(); //btBrain.AddTask(aStarTree); runThroughAStar = new BT_Sequence(); aStarFinished = new BT_Selector(); aStarTree.AddTask(new Task_AStar()); aStarTree.AddTask(runThroughAStar); runThroughAStar.AddTask(new Task_CheckNodeList()); runThroughAStar.AddTask(new Task_MoveToLocation()); runThroughAStar.AddTask(aStarFinished); aStarFinished.AddTask(new Task_CheckNodeList()); aStarFinished.AddTask(new Task_ReturnToPrev()); //aStarFinished.AddTask(new Task_SwitchTree()); mvmtTree = aStarTree; }
void Start() { survivor = GetComponent <Survivor>(); blackboard = new Blackboard(); hiveRef = GameObject.FindObjectOfType <HiveOfSurvivors>(); btBrain = new BT_Sequence(); mvmtBrain = new BT_Sequence(); mvmtTree = new BT_Sequence(); this.CreateAStarBT(); this.CreateDefaultMvmtTree(); this.CreateMultiGunBT(); this.SetMvmtTree(MOVEMENT_TREE.DEFAULT); mvmtBrain.AddTask(mvmtTree); blackboard.startNode = start; blackboard.goalNode = end; mvmtTracker = Moving.NOT_MOVING_ON_ASTAR; }