private void RotateTurret(Stage stage) { float playTime = 0.0f; // = duration float stageTime = 0.0f; float delayTime = 0.0f; switch (stage) { case Stage.Stage01: DoNothing(); return; case Stage.Stage02: playTime = 4.0f; stageTime = stageTwoDelayTIme; delayTime = 4.0f; break; case Stage.Stage03: playTime = Random.Range(1.0f, 2.0f); stageTime = stageThreeDelayTime; delayTime = 10.0f; break; case Stage.Stage04: playTime = 3.0f; stageTime = stageFourDelayTIme; delayTime = 3.0f; break; case Stage.Stage05: playTime = Random.Range(1.5f, 3.0f); stageTime = stageFiveDelayTime; delayTime = 15.0f; break; } int randomTurret; RotateTurret turret; for (float i = 0.0f; i < stageTime; i += delayTime) { randomTurret = Random.Range(0, 2); if (Data.IsEasterEgg) { turret = (randomTurret == 1 ? silverTurret : yellowTurret); } else { turret = (randomTurret == 1 ? angryTurret : grumpyTurret); } float _delay = calculateManager.GetRandomDelayTime(i, i + delayTime); turret.Shoot(playTime, _delay); } }
private void Awake() { calculateManager = GetOrCreateManager <CalculateManager>(); itemManager = GetOrCreateManager <ItemManager>(); thickTurret = FindComponent <ThickTurret>("ThickTurret"); randomTurret = FindComponent <RandomTurret>("RandomTurret"); angryTurret = FindComponent <RotateTurret>("AngryTurret"); grumpyTurret = FindComponent <RotateTurret>("GrumpyTurret"); silverTurret = FindComponent <RotateTurret>("SilverTurret"); yellowTurret = FindComponent <RotateTurret>("YellowTurret"); }