예제 #1
0
        private void ShootBullets(int startPos, Player player)
        {
            Rectangle bulletRect     = new Rectangle(0, 0, bulletTexture.Width, bulletTexture.Height);
            Vector2   bulletPosition = new Vector2(position.X + startPos, position.Y + startPos);

            if (player.position.Y <= position.Y && player.position.X <= position.X)
            {
                bulletSpreadX = -100;
                bulletSpreadY = -5;
            }
            else if (player.position.Y >= position.Y && player.position.X <= position.X)
            {
                bulletSpreadX = 30;
                bulletSpreadY = 30;
            }
            else if (player.position.X >= position.X && player.position.Y <= position.Y)
            {
                bulletSpreadX = 100;
                bulletSpreadY = 5;
            }
            else if (player.position.Y >= position.Y && player.position.X >= position.X)
            {
                bulletSpreadX = -30;
                bulletSpreadY = 30;
            }

            for (int i = 0; i <= 10; i++)
            {
                bullet = new BossOneBullets(bulletTexture, new Vector2(bulletPosition.X, bulletPosition.Y),
                                            bulletRect, player, (bulletSpreadX * i), (bulletSpreadY * i), new Vector2(0, -200), 1, 1, false, true);
                bulletList.Add(bullet);
            }
        }
예제 #2
0
 private void Fire(Player player)
 {
     for (int i = 1; i <= 1; i++)
     {
         if (bulletList.Count <= 0)
         {
             bullets = new BossOneBullets(bulletTexture, new Vector2(position.X + 16, position.Y + 16),
                                          new Rectangle(0, 0, 15, 15), player, 12, 32, Vector2.Zero, 5, i, true, false);
             bulletList.Add(bullets);
         }
     }
 }