public CameraState CreateFactory(CameraState.State state) { switch (state) { case CameraState.State.Following: return(_followingStateFactory.Create()); } throw Assert.CreateException(); }
public void ChangeState(CameraState.State state) { if (_cameraState != null) { _cameraState.Dispose(); _cameraState = null; } _cameraState = _cameraStateFactory.CreateFactory(state); _cameraState.Start(); }