Beispiel #1
0
        public Weapon(string name, double damage, int charger, 
            double timeLoadBullet, double timeLoadCharger, int ammoSize, int bulletSpeed, Bullet bullet)
        {
            m_name = name;
            m_damage = damage;
            m_charger = charger;
            m_bulletsInCharger = charger;
            m_timeLoadBullet = timeLoadBullet;
            m_timeLoadCharger = timeLoadCharger;
            m_ammoSize = ammoSize;
            //m_shoot = shoot;
            m_bulletSpeed = bulletSpeed;
            m_startReloadBullet = 0;
            m_startReloadCharger = 0;
            m_loaded = true;
            //shoot.SetWeapon(this);

            m_bullet = bullet;
            m_bullet.SetWeapon(this);
            m_bullet.SetSpeed(m_bulletSpeed);
        }
        private void Collision(Bullet bullet, Ennemy ennemy)
        {
            if (ennemy.Life.IsAlive)
            {
                var vecteur = ennemy.Location.Position - bullet.Location.Position;
                var norme = Math.Sqrt(Math.Pow(vecteur.X, 2) + Math.Pow(vecteur.Y, 2));

                if (norme < 15)
                {
                    ennemy.Life.TakeDamage(bullet.Weapon.Damage);
                    bullet.InstantDeath();
                }
            }
        }
 public void AddBullet(Bullet bullet)
 {
     bullet.SetSprite(m_renderer);
     Bullets.Add(bullet);
 }