/// <summary> /// Allows the game to perform any initialization it needs to before starting to run. /// This is where it can query for any required services and load any non-graphic /// related content. Calling base.Initialize will enumerate through any components /// and initialize them as well. /// </summary> protected override void Initialize() { // TODO: Add your initialization logic here player = new PlayerSprite(this); bombFactory = new BombFactory(this); laserFactory = new LaserFactory(this); squad = new AlienSquad(this, numAlians, bombFactory); score = new ScoreSprite(this); bombFactory.addPlayer(player); laserFactory.addSquad(squad); player.addLaserFactory(laserFactory); squad.addLaserFactory(laserFactory); score.addFactory(laserFactory); score.addPlayer(player); score.addSquad(squad); squad.addScoreSprite(score); laserFactory.addScoreScrprite(score); bombFactory.addScoreScrprite(score); Components.Add(laserFactory); Components.Add(bombFactory); Components.Add(player); Components.Add(squad); Components.Add(score); base.Initialize(); }
/// <summary> /// This adds the alien's opponent. /// </summary> /// <param name="component">The player</param> /// <exception cref="ArgumentException">Thrown if the component is not a /// PlayerSprite.</exception> public override void AddOpponent(DrawableGameComponent component) { if (component is PlayerSprite) opponent = component as PlayerSprite; else throw new ArgumentException ("The opponent must be of PlayerSprite type."); }
/// <summary> /// This adds the alien's opponent. /// </summary> /// <param name="component">The player</param> /// <exception cref="ArgumentException">Thrown if the component is not a /// PlayerSprite.</exception> public override void AddOpponent(DrawableGameComponent component) { if (component is PlayerSprite) { opponent = component as PlayerSprite; } else { throw new ArgumentException ("The opponent must be of PlayerSprite type."); } }
/// <summary> /// Allows the game to perform any initialization it needs /// to before starting to run. This is where it can query for /// any required services and load any non-graphic related content. /// Calling base.Initialize will enumerate through any components /// and initialize them as well. /// </summary> protected override void Initialize() { Texture2D motherShipBombsTexture = this.Content.Load <Texture2D> ("motherShipBombs"); Texture2D alienBombsTexture = this.Content.Load <Texture2D>("laser2"); Texture2D bonusImage = this.Content.Load <Texture2D>("bonus1"); playerLaser = new LaserFactory(this); alienBomb = new BombFactory(this, alienBombsTexture, 1, 3); shipBomb = new BombFactory(this, motherShipBombsTexture, 2, 3); bonusBomb = new BombFactory(this, bonusImage, -1, 2); player = new PlayerSprite(this, playerLaser); bonus = new Bonus(this, bonusBomb); aliens = new AlienSquad(this, alienBomb, playerLaser); score = new ScoreSprite(this, playerLaser, alienBomb, shipBomb, bonusBomb); ship = new MotherShipSprite(this, shipBomb, playerLaser); Components.Add(bonus); Components.Add(player); Components.Add(aliens); Components.Add(playerLaser); Components.Add(alienBomb); Components.Add(score); Components.Add(ship); Components.Add(shipBomb); Components.Add(bonusBomb); playerLaser.AddOpponent(aliens); playerLaser.AddOpponent(ship); alienBomb.AddOpponent(player); shipBomb.AddOpponent(player); bonusBomb.AddOpponent(player); ScoreSprite.GameOver += onGameOver; AlienSquad.GameOver += onGameOver; AlienSquad.NewWave += onNewWave; base.Initialize(); }
/// <summary> /// Allows the game to perform any initialization it needs /// to before starting to run. This is where it can query for /// any required services and load any non-graphic related content. /// Calling base.Initialize will enumerate through any components /// and initialize them as well. /// </summary> protected override void Initialize() { Texture2D motherShipBombsTexture = this.Content.Load<Texture2D> ("motherShipBombs"); Texture2D alienBombsTexture = this.Content.Load<Texture2D>("laser2"); Texture2D bonusImage = this.Content.Load<Texture2D>("bonus1"); playerLaser = new LaserFactory(this); alienBomb = new BombFactory(this, alienBombsTexture, 1, 3); shipBomb = new BombFactory(this, motherShipBombsTexture, 2, 3); bonusBomb = new BombFactory(this, bonusImage, -1, 2); player = new PlayerSprite(this, playerLaser); bonus = new Bonus(this, bonusBomb); aliens = new AlienSquad(this, alienBomb, playerLaser); score = new ScoreSprite(this, playerLaser, alienBomb, shipBomb, bonusBomb); ship = new MotherShipSprite(this, shipBomb, playerLaser); Components.Add(bonus); Components.Add(player); Components.Add(aliens); Components.Add(playerLaser); Components.Add(alienBomb); Components.Add(score); Components.Add(ship); Components.Add(shipBomb); Components.Add(bonusBomb); playerLaser.AddOpponent(aliens); playerLaser.AddOpponent(ship); alienBomb.AddOpponent(player); shipBomb.AddOpponent(player); bonusBomb.AddOpponent(player); ScoreSprite.GameOver += onGameOver; AlienSquad.GameOver += onGameOver; AlienSquad.NewWave += onNewWave; base.Initialize(); }
/// <summary> /// adds a player /// </summary> /// <param name="player">the player</param> public void addPlayer(PlayerSprite player) { this.player = player; }
/// <summary> /// adds a player /// </summary> /// <param name="play"></param> public void addPlayer(PlayerSprite play) { this.play = play; }