VECTOR t_pos1,t_pos2;
ANGLE tempA;
var bullet_fired;
function trace_collision() //<-in player's while loop
{
t_pos1.x = screen_size.x/2;
t_pos1.y = screen_size.y/2;
t_pos1.z = 0;
vec_for_screen (t_pos1,camera);
t_pos2.x = screen_size.x/2;
t_pos2.y = screen_size.y/2;
t_pos2.z = 200000;
vec_for_screen (t_pos2,camera);
if (c_trace(t_pos1.x,t_pos2.x, IGNORE_ME | IGNORE_PASSABLE | IGNORE_YOU) > 0)
{
vec_set(trace_coords,target);
}
}
function move_parrows() //some AUM code right here
{
vec_set(tempA,trace_coords);
vec_sub(tempA,my.x);
vec_to_angle(my.pan,tempA);
while(1)
{
if (vec_dist(my.x, player.x) > 70) // the bullet has moved away from the player?
reset(my, PASSABLE); // then reset its passable flag (it can't collide with player's ship anymore)
c_move(my, vector(75 * time_step,0,0), nullvector, IGNORE_PASSABLE | IGNORE_ME ); // 75 gives player's bullets' movement speed
wait (1);
}
}
function handle_weapon()//<-in player's while loop
{
if(!mouse_left) bullet_fired = 1;
while(mouse_left)
{
bullet_fired = 0;
wait(1);
}
if(!bullet_fired)
{
vec_for_vertex (temp.x, weapon1, 54);
bullet = ent_create(bullet_mdl,temp.x,move_bullets);
bullet_fired = 1;
}
}