init
This commit is contained in:
commit
0556f63d2d
119 changed files with 2908 additions and 0 deletions
76
objects/obenemy/Step_0.gml
Normal file
76
objects/obenemy/Step_0.gml
Normal file
|
|
@ -0,0 +1,76 @@
|
|||
if alert = 0 and distance_to_object(obSpaceship) > 256 and alarm[0]=-1
|
||||
{
|
||||
alarm[0] = irandom_range(room_speed * 5, room_speed * 10);
|
||||
}
|
||||
else if distance_to_object(obSpaceship) <= 256 and !obSpaceship.inMenu
|
||||
{
|
||||
alert = 1;
|
||||
}
|
||||
|
||||
if alert = 1
|
||||
{
|
||||
if distance_to_object(obSpaceship) > 1024
|
||||
{
|
||||
alert = 0;
|
||||
alarm[0] = 1;
|
||||
}
|
||||
shipSpeed = shipMaxSpeed;
|
||||
|
||||
if shipHealth > 5
|
||||
{
|
||||
if abs(angle_difference(destAngle, direction)) <= 10 and alarm[2] = -1
|
||||
{
|
||||
lat = point_direction(x, y, obCursor.x, obCursor.y);
|
||||
lenX = lengthdir_x(rocketLen, lat + rocketDir);
|
||||
lenY = lengthdir_y(rocketLen, lat + rocketDir);
|
||||
laser = instance_create_layer(x + lenX, y + lenY, "Instances", obLaser);
|
||||
laser.direction = direction;
|
||||
laser.owner = id;
|
||||
alarm[2] = room_speed/5;
|
||||
}
|
||||
if distance_to_object(obSpaceship) >= 128
|
||||
{
|
||||
destAngle = point_direction(x, y, obSpaceship.x, obSpaceship.y);
|
||||
}
|
||||
else
|
||||
{
|
||||
destAngle += 1;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
image_angle = direction;
|
||||
speed = shipSpeed;
|
||||
if direction != destAngle
|
||||
{
|
||||
if angle_difference(destAngle, direction)<0
|
||||
{
|
||||
direction -= shipTurnRate/room_speed;
|
||||
}
|
||||
else
|
||||
{
|
||||
direction += shipTurnRate/room_speed;
|
||||
}
|
||||
}
|
||||
|
||||
if (x < 0 or x > room_width or y < 0 or y > room_height)
|
||||
{
|
||||
destAngle = point_direction(x, y, obSpacestation.x, obSpacestation.y);
|
||||
shipSpeed = shipMaxSpeed;
|
||||
}
|
||||
if place_meeting(x, y, obSpacestation)
|
||||
{
|
||||
x = xprevious - lengthdir_x(16, point_direction(x, y, obSpacestation.x, obSpacestation.y));
|
||||
y = yprevious - lengthdir_y(16, point_direction(x, y, obSpacestation.x, obSpacestation.y));
|
||||
alarm[1] = 1;
|
||||
alarm[0] = 1;
|
||||
}
|
||||
|
||||
if shipHealth <= 0
|
||||
{
|
||||
instance_create_layer(random(room_width), random(room_height), "Instances", obEnemy);
|
||||
bounty = instance_create_layer(x, y, "Instances", obBounty);
|
||||
bounty.amount = irandom_range(10, 25);
|
||||
instance_destroy();
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue