public GameCameraMotionController(IGameCameraView cameraView,
                                   IGameCameraInputController cameraInput,
                                   ILevelModel levelModel)
 {
     _cameraView  = cameraView;
     _cameraInput = cameraInput;
     _levelModel  = levelModel;
     _cameraInput.OnRotationChange += UpdateCameraRotation;
 }
 public BlockMovementHandler(IBlockMotionInputController inputController,
                             IGameCameraView gameCamera,
                             IBlockMotionController motionController,
                             IAudioController audioController)
 {
     _inputController  = inputController;
     _gameCamera       = gameCamera;
     _motionController = motionController;
     _audioController  = audioController;
     _inputController.RegisterListener(EBlockMotionEvent.MoveForward, OnMoveForward);
     _inputController.RegisterListener(EBlockMotionEvent.MoveBackward, OnMoveBackward);
     _inputController.RegisterListener(EBlockMotionEvent.MoveLeft, OnMoveLeft);
     _inputController.RegisterListener(EBlockMotionEvent.MoveRight, OnMoveRight);
 }
 public BlockRotationHandler(IBlockMotionInputController inputController,
                             IGameCameraView gameCamera,
                             IBlockMotionController motionController,
                             IAudioController audioController)
 {
     _inputController  = inputController;
     _gameCamera       = gameCamera;
     _motionController = motionController;
     _audioController  = audioController;
     _inputController.RegisterListener(EBlockMotionEvent.RotateRight, OnRotateRight);
     _inputController.RegisterListener(EBlockMotionEvent.RotateLeft, OnRotateLeft);
     _inputController.RegisterListener(EBlockMotionEvent.RotateDown, OnRotateDown);
     _inputController.RegisterListener(EBlockMotionEvent.RotateUp, OnRotateUp);
 }