Example #1
0
        void SpawnEnemysOfWave(int wave, GameTime gameTime)
        {
            Random rnd = new Random();

            SpawnTime1 += (float)gameTime.ElapsedGameTime.TotalSeconds;
            SpawnTime2 += (float)gameTime.ElapsedGameTime.TotalSeconds;
            //spawn mele
            if (_waves[wave][0] > 0 && SpawnTime1 >= 1)
            {
                int         randomSP = rnd.Next(0, 16);
                Enemy.enemy enemy    = new Enemy.enemy(this.Game);
                enemy.body        = _aspEnemy1;
                enemy.position    = spawnPoints[randomSP];
                enemy.attack      = false;
                enemy.shootSpeed  = 6f;
                enemy.enemyType   = 0;
                enemy.lastFire    = 0;
                enemy.frameEnemy  = 0;
                enemy.shoot1      = _shoot1;
                enemy.shoot2      = _shoot2;
                enemy.die         = _die;
                enemy.voice       = _voice;
                enemy.orientacija = SpriteEffects.None;
                this.Game.Components.Add(enemy);
                _enemys.Add(enemy);
                _waves[wave][0]--;
                SpawnTime1 = 0;
            }

            if (_waves[wave][1] > 0 && SpawnTime2 >= 1)
            {
                //spawn range
                int         randomSP = rnd.Next(0, 16);
                Enemy.enemy enemy    = new Enemy.enemy(this.Game);
                enemy.body        = _aspEnemy2;
                enemy.position    = spawnPoints[randomSP];
                enemy.attack      = false;
                enemy.shootSpeed  = 6f;
                enemy.enemyType   = 1;
                enemy.lastFire    = 0;
                enemy.frameEnemy  = 0;
                enemy.shoot1      = _shoot1;
                enemy.shoot2      = _shoot2;
                enemy.die         = _die;
                enemy.voice       = _voice;
                enemy.orientacija = SpriteEffects.None;
                this.Game.Components.Add(enemy);
                _enemys.Add(enemy);
                _waves[wave][1]--;
                SpawnTime2 = 0;
            }

            if (_waves[wave][0] == 0 && _waves[wave][1] == 0)
            {
                spawn = false;
            }
        }
Example #2
0
        private void Shoot(Enemy.enemy enemy)
        {
            Vector2 direction = _player.position - enemy.position;
            float   distance  = direction.Length();

            direction /= distance;
            direction.Normalize();
            double kot = Math.Atan2(_player.position.Y - enemy.position.Y, _player.position.X - enemy.position.X);

            Bullet.Bullet bulet = new Bullet.Bullet(Game);
            bulet.body      = _bullet.body;
            bulet.position  = enemy.position;
            bulet.direction = direction;
            bulet.rotation  = (float)kot;
            bulet.player    = false;
            Game.Components.Add(bulet);
            _draw._bullets.Add(bulet);
        }