public void Launch(Vector3 targetPosition) { var missile = new HomingMissile(targetPosition); if (missile.Exists) { _missiles.Add(missile); } else { missile.Dispose(); } }