public GameViewController(MainWindow mainWindow, string selectedGame) : base(mainWindow) { _refreshTimer = new Timer { Interval = 1000 / 60 }; _pacmanAnimationTimer = new Timer { Interval = 150 }; _obstacleTimer = new Timer { Interval = 3000 }; _spawnTimer = new Timer { Interval = 2500 }; _clock = new Clock(); _score = new Score(); _gameView = new GameView(); _gameValues = new GameValues(); _playgroundFactory = new PlaygroundFactory(); _playerFactory = new PlayerFactory(); _enemyFactory = new EnemyFactory(); _pacmanAnimation = new PacmanAnimation(); _enemyAnimation = new EnemyAnimation(); _obstacleAnimation = new ObstacleAnimation(); _step = new Step(); _position = new Position(_gameValues); _random = new Random(); _sound = new Sound(); SetContentOfMain(mainWindow, _gameView); _selectedGame = selectedGame; _gameState = GameState.Playing; SetKeyDownEvents(_gameView.GameCanvas, OnButtonKeyDown); SetKeyUpEvents(_gameView.GameCanvas, OnButtonKeyUp); _gameView.GameCanvas.Loaded += OnGameCanvasLoaded; MainWindow.Closing += OnMainWindowClosing; _refreshTimer.Elapsed += RefreshGameCanvas; _pacmanAnimationTimer.Elapsed += OnPacmanAnimationTimerElapsed; _obstacleTimer.Elapsed += OnObstacleTimerElapsed; _spawnTimer.Elapsed += OnspawnTimerElapsed; _clock.PlaytimeIsOver += OnPlaytimeIsOver; _clock.PlaytimeIsOver += _sound.OnPlaytimeIsOver; _position.CollisionDetecter.CoinCollision += OnCoinCollision; _position.CollisionDetecter.CoinCollision += _sound.OnCoinCollision; _position.CollisionDetecter.EndpointCollision += OnEndpointCollision; _position.CollisionDetecter.EndpointCollision += _sound.OnEndpointCollision; _position.CollisionDetecter.EnemyCollision += OnOnEnemyCollision; _position.CollisionDetecter.EnemyCollision += _sound.OnOnEnemyCollision; _position.CollisionDetecter.ObstacleCollision += OnObstacleCollision; _position.CollisionDetecter.ObstacleCollision += _sound.OnObstacleCollision; _pacmanAnimation.LoadPacmanImages(); _enemyAnimation.LoadPacmanImages(); _obstacleAnimation.LoadObstacleImages(); }
private void Start() { GameObject Player = Instantiate(prefabPlayer, new Vector3(12, -6, 0), Quaternion.identity) as GameObject; GameManager.Instance.SetPlayer(Player); PlayerTransform = Player.GetComponent<Transform>(); Background1 = Instantiate(prefabBackground1, new Vector3(0, -1, 10), Quaternion.identity) as GameObject; Background2 = Instantiate(prefabBackground2, new Vector3(BackgroundWidth, -1, 10), Quaternion.identity) as GameObject; Grass1 = Instantiate(prefabGrass, new Vector3(0, -4.2f, -2), Quaternion.identity) as GameObject; Grass2 = Instantiate(prefabGrass, new Vector3(GrassWidth, -4.2f, -2), Quaternion.identity) as GameObject; cat = Background1.transform.GetChild(0).GetComponent<ObstacleAnimation>(); hibou = Background2.transform.GetChild(0).GetComponent<ObstacleAnimation>(); }