// 메인 코루틴 private IEnumerator MoveMain() { StartCoroutine(_Logic.MoveConstantVelocity(this, new Vector2(0.0f, 0.75f), 30)); yield return new WaitForFrames(100); while (true) { if (stateStack.Count > 0) { IShot shot = stateStack.Dequeue(); Log(shot.ToString()); yield return StartCoroutine(shot.Shot(this)); } yield return new WaitForFrames(30); } }
public void Shot(GameObject bullet, Transform barrel, float force) { _shotInplementation.Shot(bullet, barrel, force); }
void IFly.Fly() { Console.WriteLine(string.Format("I am {0}.I can Fly!!!", this._name)); _shot.Shot(); }