// Update is called once per frame void Update() { if (IsPlayed) { bool IsFired = battery.Fire(direction); if(IsFired) Transition(); } }
public void Fire() { if (LaserEyesCooldownRemaining <= 0) { LaserEyesCooldownRemaining = LaserEyesCooldown; Eyes.Fire(); OnFired.Publish(); } OnFinished(); }
private void Fire() { _secsTilNextShot -= Time.deltaTime; if (_secsTilNextShot <= 0) { LaserGun.Fire(); _secsTilNextShot = _currentAttack.TimeBetweenShots; } _timeTilNextState -= Time.deltaTime; if (_timeTilNextState <= 0) { _attackState = LaserTurretAttackState.WindingDown; _timeTilNextState = _currentAttack.WindDownTime; } }