public void Initialize(IPlayerBehaviour playerBehaviour, ITimingManager timingManager, ProjectileBehaviour.Pool projectilePool) { _playerBehaviour = playerBehaviour; _timingManager = timingManager; _projectilePool = projectilePool; if (_opponent == null) { gameObject.SetActive(false); } }
public GameProperties(IMembershipManager membership, ITimingManager timing, INotificationManager notification, ILogManager logger) { //TODO: for each set! //TODO: test if this services are available; //TODO: test if this links are not null Membership = membership; Timing = timing; Notification = notification; Logger = logger; }
public GameController(IAsteroidsManager asteroidsManager, Player player, GameStateData gameStateData, IPlayerBehaviour playerBehaviour, ITimingManager timingManager, IGameInput gameInput, IOpponentBehaviour opponentBehaviour, IBoundProvider boundProvider) { _asteroidsManager = asteroidsManager; _player = player; _gameStateData = gameStateData; _playerBehaviour = playerBehaviour; _timingManager = timingManager; _gameInput = gameInput; _opponentBehaviour = opponentBehaviour; _boundProvider = boundProvider; _player.Death += OnDeath; _asteroidsManager.AsteroidDespawned += OnAsteroidDespawn; _gameInput.RestartPressed += OnRestartPressed; StartGame(); }