Sporkinator icon

Boss Fight

Sporkinator | PRO | 10/26/11 05:20:51 AM UTC | 0 ⭐ | 241 👁️ | Never ⏰ | []
Game Maker |

0 B

|

None

|

0 👍

/

0 👎

active = 1;
speed = 0;
if (global.shooting  == 1)
{
    alarm[2] = 5;
    exit;
}
//bullets
switch (global.bossstages)
{
    case 3:
    if timer < 2 * global.RANK + 1
    {
        timer += 1;
        global.owos = 0;
        repeat (global.RANK * 2 + 1)
        {
            iii = instance_create(x,y,obj_bullet_B);
            with (iii)
            {
                speed = 2 + 0.75 * global.RANK;
                direction = point_direction(x, y, obj_player.x, obj_player.y) - 30 + (30 / global.RANK) * global.owos;
            }
            global.owos += 1;
        }
    }        
    if (tica  == 0)
    {
        instance_create(x, y, obj_Bs1_bulletgen_A);
        instance_create(x, y, obj_Bs1_bulletgen_B);
        tica = 1;
    }
    if (once == 3)
    {
    repeat (global.RANK)
    {
        iii = instance_create(x + global.tap * cos(degtorad(3 * global.tap)),y + global.tap * sin(degtorad(3 * global.tap)), obj_bullet_C);
        with (iii)
        {
            speed = 1.5 + 0.5 * global.RANK;
            direction = global.tap + global.timeouts - 90;
            global.timeouts += 1;
        }
    }
    repeat (global.RANK)
    {
        iii = instance_create(x - global.tap * cos(degtorad(3 * global.tap)),y + global.tap * sin(degtorad(3 * global.tap)),obj_bullet_C);
        with (iii)
        {
            speed = 1.5 + 0.5 * global.RANK;
            direction = -global.tap - global.timeouts - 90;
            global.timeouts += 1;
        }
    }  
    global.tap += 1;
    once = 0;
}
    once += 1;
    global.tap += 2 / global.RANK;
    alarm[2] = 1;
    break;
    case 2:
    if (stoppers <= global.RANK) 
    {    
        iii = instance_create(x, y, obj_bullet_D);
        with (iii)
        {
            speed = 0.02;
            friction = -0.02 * global.RANK;
            alarm[0] = 55;
            direction = 75 - random(60);
        }
        iii = instance_create(x, y, obj_bullet_D);
        with (iii)
        {
            speed = 0.02;
            friction = -0.02 * global.RANK;
            alarm[0] = 55;
            direction = 105 + random(60);
        }
    }
    stoppers += 1;
    if (stoppers > 4)
    {
        stoppers = 0;
    }
    if global.tops < 3 + global.RANK;
    {
        global.tops += 1;
        repeat (10 + 5 * global.RANK)
        {
            iii = instance_create(x,y,obj_bullet_B);
            with (iii)
            {
                speed = 0.03;
                friction = -0.03 * global.RANK;
                direction = (global.monsters + 0.25 * global.tops) * (360 / (10 + 5 * global.RANK));
            }
            global.monsters += 1;
        }
    }
    alarm[2] = 4;
    break;
    case 1:
    if (tina == 0)
    {
        instance_create(x, y, obj_Bs1_bulletgen_C);
        instance_create(x, y, obj_Bs1_bulletgen_D);
        tina = 1;
    }
    iii = instance_create(knights, y, obj_bullet_E);
    with (iii)
    {
        direction = 90;
        speed = random(2) + 2;
        gravity_direction = 260 + random(20);
        gravity = 0.3;
    }
    iii = instance_create(knights - 10, y, obj_bullet_G);
    with (iii)
    {
        direction = 90;
        speed = random(2) + 2;
        gravity_direction = 260 + random(20);
        gravity = 0.3;
        alarm[0] = 65;
    }
    iii = instance_create(640-knights,y,obj_bullet_E)
    with (iii)
    {
        direction = 90;
        speed = random(2) + 2;
        gravity_direction = 260 + random(20);
        gravity = 0.3;
    }
    iii = instance_create(640 - knights - 10, y, obj_bullet_G);
    with (iii)
    {
        direction = 90;
        speed = random(2) + 2;
        gravity_direction = 260 + random(20);
        gravity = 0.3;
        alarm[0] = 65;
    }
    alarm[2] = 5 - global.RANK;
    break;
    case 0:
    break;
    default:
    break;
}
if (add >= 60 + 20 * global.RANK)
{
    movex = x - 100 + irandom(200);
    movey = y - 20 + irandom(40);
    if (movey > 200)
    {
        movey -= 60;
    }
    if (movey < 100)
    {
        movey += 60;
    }
    if (movex > 540)
    {
        movex -= 300;
    }
    if (movex < 100)
    {
        movex += 300;
    }
    move_towards_point(movex, movey, 4);
    friction = 0.1;
    alarm[2] = 180 - global.RANK * 15;
    global.tap = 0;
    global.timeouts = 0;
    timer = 0;
    add = 0;
    global.tops = 0;
    global.monsters = 0;
    tica = 0;
    knights = 0;
    tina = 0;
}

Comments