コード例 #1
0
ファイル: FirstBossSprite.cs プロジェクト: hk222gn/Supesu
        public override void Update(GameTime gameTime, Rectangle clientBounds)
        {
            shoot += (float)gameTime.ElapsedGameTime.TotalSeconds;
            if (shoot >= 1)
            {
                shoot = 0;
                FireProjectile();
            }

            activateLaser += (float)gameTime.ElapsedGameTime.TotalSeconds;
            //Handles the boss laser stages.
            if (activateLaser >= 2 && !warningActivated && !laserActive)
            {
                //Warn the user about incoming laser
                Sounds.SoundBank.PlayCue("LaserWarning");
                warningActivated = true;
            }
            if (activateLaser >= 4)
            {
                laserLeft = new FirstBossLaser(Vector2.Zero, new Vector2((this.position.X + frameSize.X / 2) - 70, this.position.Y + 190), 0f, new Rectangle((int)(this.position.X + frameSize.X / 2 - 70), (int)this.position.Y + 190, 40, 720), game.Content, 9);
                laserRight = new FirstBossLaser(Vector2.Zero, new Vector2((this.position.X + frameSize.X / 2) + 30, this.position.Y + 190), 0f, new Rectangle((int)(this.position.X + frameSize.X / 2 + 30), (int)this.position.Y + 190, 40, 720), game.Content, 9);

                laserActive = true;

                activateLaser = 0;

                warningActivated = false;
            }
            else if (activateLaser >= 1.5 && laserActive)
            {
                laserLeft = null;
                laserRight = null;

                activateLaser = 0;
                laserActive = false;
                laserStruckTarget = false;
            }

            base.Update(gameTime, clientBounds);
        }
コード例 #2
0
ファイル: Level.cs プロジェクト: hk222gn/Supesu
 public static void AddBullet(DefaultBullet bullet)
 {
     bullets.Add(bullet);
 }