private IEnumerator Firing(GenerateEventArgs e) { for (int i = 0; i < Count; i++) { base.OnGenerate(e); yield return(new WaitForSeconds(FireRate)); } }
protected override void OnGenerate(GenerateEventArgs e) { if (Mathf.Abs(TargetAngle) - Mathf.Abs(CurrentAngle) <= Mathf.Abs(AngularSpeed)) { CurrentAngle = TargetAngle; } else { CurrentAngle += AngularSpeed; } Target.transform.localEulerAngles = Vector3.forward * CurrentAngle; }
public abstract void Generate(GenerateEventArgs e);
protected override void OnGenerate(GenerateEventArgs e) { OnGenerateCalled.Invoke(); }
protected override void OnGenerate(GenerateEventArgs e) { FiringCoroutine = StartCoroutine(Firing(e)); }
protected override void OnGenerate(GenerateEventArgs e) { Dialog.OnEnd += End; Dialog.OnEnd += () => Dialog.OnEnd -= End; Displayer.StartDialog(Dialog); }
protected override void OnGenerate(GenerateEventArgs e) { IsMoving = true; }