public Level(Input input, TextureManager textureManager, PersistantGameData gameData) { _input = input; _gameData = gameData; _textureManager = textureManager; _effectsManager = new EffectsManager(_textureManager); // -1300 is bad for two reasons // 1. It's a magic number in the middle of the code // 2. It's based on the size of the form but doesn't directly reference the size of the form // this means duplication and two places to edit the code if the form size changes. // The form size and the enemy manager play area size should both get their value // from one central place. _enemyManager = new EnemyManager(_textureManager, _effectsManager, _bulletManager, -1300); _background = new ScrollingBackground(textureManager.Get("background")); _background.SetScale(2, 2); _background.Speed = 0.15f; _backgroundLayer = new ScrollingBackground(textureManager.Get("background_layer_1")); _backgroundLayer.Speed = 0.1f; _backgroundLayer.SetScale(2.0, 2.0); _playerCharacter = new PlayerCharacter(_textureManager, _bulletManager); }
public void UpdatePlayerCollision(PlayerCharacter playerCharacter) { foreach (Bullet bullet in _enemyBullets) { if (bullet.GetBoundingBox().IntersectsWith(playerCharacter.GetBoundingBox())) { bullet.Dead = true; playerCharacter.OnCollision(bullet); } } }
internal void OnCollision(PlayerCharacter player) { // Handle collision with player. }