action part_enemy
{
my.ambient = -100;
while (player == null) {wait (1);}
my.z = player.z; // set the same height for the enemy ships and the player
var shuttle_speed;
my.skill10 = 2;
my.skill40 = 5; // I'm a ship
my.enable_impact = on;
my.event = destroy_them;
shuttle_speed.x = -1.99*time_step;
shuttle_speed.y = 0;
shuttle_speed.z = 0;
while ((my.x > -800) && (my.skill10 > 0))
{
move_mode = ignore_you + ignore_passable + glide;
ent_move (nullvector, shuttle_speed);
if ((vec_dist (my.x, player.x) < 800) && (total_frames % 90 == 1)) // random firing intervals
{
if (my.x > player.x) // still got the chance to hit the player?
{
snd_play (fire1_wav, 40, 0);
ent_create(sphere_mdl, vector(my.x+5,my.y,my.z) , move_bullet4);
}
}
wait (1);
}
ent_create(explosion_pcx, vector(my.x, my.y, my.z), animate_explosion);
ent_remove(me);
}