public IEnumerator WaveProducer() { for (int i = 0; i < bossWaves[currentWave].enemies.Length; i++) { int randomPipe = Random.Range(0, pipePositions.Length); GameObject go = Instantiate(bossWaves[currentWave].enemies[i], pipePositions[randomPipe].transform.position, Quaternion.identity); ChargingEnemyBlackboard chargingEnemyBlackboard = go.GetComponent <ChargingEnemyBlackboard>(); ThrowHandsEnemyBlackboard throwHandsEnemyBlackboard = go.GetComponent <ThrowHandsEnemyBlackboard>(); if (chargingEnemyBlackboard) { chargingEnemyBlackboard.detectionDistanceOnSight = 50; chargingEnemyBlackboard.detectionDistanceOffSight = 50; chargingEnemyBlackboard.playerOutOfRangeDistance = 100; } if (throwHandsEnemyBlackboard) { throwHandsEnemyBlackboard.detectionDistanceOnSight = 50; throwHandsEnemyBlackboard.detectionDistanceOffSight = 50; throwHandsEnemyBlackboard.playerOutOfRangeDistance = 100; } if (i < bossWaves[currentWave].enemies.Length - 1) { yield return(new WaitForSeconds(bossWaves[currentWave].interval)); } } yield return(new WaitForSeconds(bossWaves[currentWave].duration)); currentWave++; antagonistBossFSM.ChangeState(AntagonistBossFSM.States.FALLING); }
private void Start() { blackboard = GetComponent <ThrowHandsEnemyBlackboard>(); enemyAgressiveFSM = GetComponent <ThrowHandsEnemyAggressiveFSM>(); timer = 0; }
private void Start() { blackboard = GetComponent <ThrowHandsEnemyBlackboard>(); enemyPassiveFSM = GetComponent <ThrowHandsEnemyPassiveFSM>(); wanderPlusAvoid = GetComponent <WanderPlusAvoid>(); arrivePlusAvoid = GetComponent <ArrivePlusAvoid>(); }
private void Start() { blackboard = GetComponent <ThrowHandsEnemyBlackboard>(); wanderPlusAvoid = GetComponent <WanderPlusAvoid>(); arrivePlusAvoid = GetComponent <ArrivePlusAvoid>(); timer = 0; }
public IEnumerator WaveProducer() { waveScene.PlayCrowdSound(); waveScene.CheersSound(); yield return(new WaitForSeconds(1.0f)); activate = true; for (int i = 0; i < waves[currentWave].enemies.Length; i++) { int randomPipe = Random.Range(0, pipePositions.Length); if (randomPipe == 0) { waveScene.playLeftConfetti(); } else { waveScene.playRightConfetti(); } GameObject go = Instantiate(waves[currentWave].enemies[i], pipePositions[randomPipe].transform.position, Quaternion.identity); EnemyBlackboard blackboard = go.GetComponent <EnemyBlackboard>(); ChargingEnemyBlackboard chargingEnemyBlackboard = go.GetComponent <ChargingEnemyBlackboard>(); ThrowHandsEnemyBlackboard throwHandsEnemyBlackboard = go.GetComponent <ThrowHandsEnemyBlackboard>(); currentEnemies.Add(blackboard); if (chargingEnemyBlackboard) { chargingEnemyBlackboard.detectionDistanceOnSight = 50; chargingEnemyBlackboard.detectionDistanceOffSight = 50; chargingEnemyBlackboard.playerOutOfRangeDistance = 100; chargingEnemyBlackboard.PipeSpawnSound(); } if (throwHandsEnemyBlackboard) { throwHandsEnemyBlackboard.detectionDistanceOnSight = 50; throwHandsEnemyBlackboard.detectionDistanceOffSight = 50; throwHandsEnemyBlackboard.playerOutOfRangeDistance = 100; throwHandsEnemyBlackboard.PipeSpawnSound(); } if (i < waves[currentWave].enemies.Length - 1) { yield return(new WaitForSeconds(waves[currentWave].interval)); } } currentWave++; }
private void Start() { blackboard = GetComponent <ThrowHandsEnemyBlackboard>(); enemyHitFSM = GetComponent <ThrowHandsEnemyHitFSM>(); }
private void Start() { blackboard = GetComponent <ThrowHandsEnemyBlackboard>(); enemyStunFSM = GetComponent <ThrowHandsEnemyStunFSM>(); rigidBody = GetComponent <Rigidbody>(); }