public Cutoff(Transform theTransform, SprintContainer sprint, Node enemyFlag, Node teamFlag) { this.theTransform = theTransform; this.teamFlag = teamFlag; this.sprint = sprint; path = AStar.getPath(enemyFlag, teamFlag); }
public GoToBase(Transform theTransform, Transform enemyTransform, SprintContainer sprinter, Node teamFlag) { this.theTransform = theTransform; this.sprinter = sprinter; this.teamFlag = teamFlag; this.enemyTransform = enemyTransform; }
public ReturnHome(Transform theTransform, Transform enemyTransform, SprintContainer sprinter, Node destination) { this.theTransform = theTransform; this.enemyTransform = enemyTransform; this.destination = destination; this.sprinter = sprinter; }
public TrackEnemy(Transform theTransform, SprintContainer sprinter, Node enemyBase, Node teamBase) { this.theTransform = theTransform; this.sprinter = sprinter; toHome = AStar.getPath(teamBase, enemyBase); Array.Reverse(toHome); }
void Start() { Begin(); AStar.SetAllNodes(); SprintContainer sprint = GetComponent <SprintContainer>(); bringFlagHome = new ReturnHome(theTransform, enemy.GetComponent <Transform>(), sprint, teamFlag); seekEnemyFlag = new SeekEnemyFlag(theTransform, sprint, enemyFlag); captureEnemy = new Cutoff(theTransform, sprint, enemyFlag, teamFlag); chaseEnemy = new Chase(theTransform, enemyTransform, sprint); machine = new StateMachine(seekEnemyFlag); initialEnemyFlagPosition = enemyFlagObject.transform.position; initialTeamFlagPosiiton = teamFlagObject.transform.position; }
void Start() { AStar.SetAllNodes(); theTransform = GetComponent <Transform>(); Transform enemyTransform = enemy.GetComponent <Transform>(); SprintContainer sprinter = GetComponent <SprintContainer>(); //Boolean Checks CanSeeEnemy seeEnemy = new CanSeeEnemy(theTransform, enemyTransform); CloserToHome closerHome = new CloserToHome(theTransform, enemyTransform, teamFlagNode); FlagCaptured teamFlagCaptured = new FlagCaptured(teamFlag); FlagCaptured enemyFlagCaptured = new FlagCaptured(enemyFlag); //Movement Leaves GoToBase returnHome = new GoToBase(theTransform, enemyTransform, sprinter, teamFlagNode); SeekEnemyFlag getFlag = new SeekEnemyFlag(theTransform, sprinter, enemyFlagNode); ChaseEnemy followEnemy = new ChaseEnemy(theTransform, enemyTransform, sprinter); TrackEnemy findEnemy = new TrackEnemy(theTransform, sprinter, teamFlagNode, enemyFlagNode); //Do this if team flag not captured Sequence regularReturnHome = new Sequence(new List <Routine> { enemyFlagCaptured, returnHome }); Selector flagNotCapturedSelector = new Selector(new List <Routine> { regularReturnHome, getFlag }); //Do this if team flag captured Sequence closerHomeSequence = new Sequence(new List <Routine>() { closerHome, returnHome }); Sequence seeEnemySequence = new Sequence(new List <Routine>() { seeEnemy, followEnemy }); Selector seeEnemySelector = new Selector(new List <Routine>() { seeEnemySequence, findEnemy }); Selector haveFlagSelector = new Selector(new List <Routine>() { closerHomeSequence, seeEnemySelector }); Sequence haveFlagSequence = new Sequence(new List <Routine>() { enemyFlagCaptured, haveFlagSelector }); Selector flagCapturedSelector = new Selector(new List <Routine>() { haveFlagSequence, seeEnemySelector }); Sequence flagCapturedSequence = new Sequence(new List <Routine>() { teamFlagCaptured, flagCapturedSelector }); tree = new Selector(new List <Routine>() { flagCapturedSequence, flagNotCapturedSelector }); }
public ChaseEnemy(Transform theTransform, Transform enemyTransform, SprintContainer sprinter) { this.theTransform = theTransform; this.enemyTransform = enemyTransform; this.sprinter = sprinter; }
public SeekEnemyFlag(Transform theTransform, SprintContainer sprint, Node destination) { this.theTransform = theTransform; this.sprint = sprint; this.destination = destination; }
public SeekEnemyFlag(Transform theTransform, SprintContainer sprinter, Node enemyFlag) { this.theTransform = theTransform; this.sprinter = sprinter; this.enemyFlag = enemyFlag; }
public Chase(Transform theTransform, Transform theEnemy, SprintContainer sprinter) { this.theTransform = theTransform; this.theEnemy = theEnemy; this.sprinter = sprinter; }