public void Initialize(GameSettings gameSettings, InputController inputController, LocalStorage.LocalStorage localStorage, SoundController soundController, ISequenceChecker sequenceChecker, IPointsCalculator pointsCalculator) { _gameSettings = gameSettings; _inputController = inputController; _localStorage = localStorage; _soundController = soundController; _sequenceChecker = sequenceChecker; _pointsCalculator = pointsCalculator; _gemSelectionController = new GemSelectionController(_inputController); _gridController = gameObject.AddComponent <GridController>(); _gridController.Initialize(_gameGrid, _gameSettings, sequenceChecker); _gemSelectionController.OnSelectionComplete.AddListener( (first, second) => StartCoroutine(ChangeGemsPosition(first, second))); _gemSelectionController.OnSelectionInvalid.AddListener(InvalidMove); _gridController.OnSequence.AddListener(CalculatePoints); ContextProvider.Context.OnPause.AddListener(Pause); }
public void Initialize(Transform container, GameSettings gameSettings, ISequenceChecker sequenceChecker) { _container = container; _gameSettings = gameSettings; _sequenceChecker = sequenceChecker; }