Deltarune (Chapter 3) script viewer

← back to main script listing

gml_GlobalScript_scr_battle

(view raw script w/o annotations or w/e)
1
function 
scr_battle
scr_battle

function
scr_battle(arg0, arg1, arg2, arg3, arg4)
{ global.specialbattle = arg1; global.encounterno = arg0; if (global.flag[9 battle_music] != 2) { global.flag[9 battle_music] = 1; var batmusic = "battle.ogg"; if (global.chapter == 3) { if (global.encounterno == 111 && room == room_board_2) batmusic = "rudebuster_boss.ogg"; if (room == room_dw_b3bs_watercooler || room == room_dw_teevie_watercooler || room == room_dw_b3bs_zapper_b || room == room_dw_ranking_c) batmusic = "battle_vapor.ogg"; if (room == room_dw_teevie_chef) batmusic = "rouxls_battle.ogg"; } global.batmusic[0] = snd_init(batmusic); mus_volume(global.batmusic[1], 1, 0); } instance_create(0, 0, obj_battleback); instance_create(0, 0, obj_encounterbasic); __enemymarker[0] = arg2; __enemymarker[1] = arg3; __enemymarker[2] = arg4; for (__ien = 0; __ien < 3; __ien++) { if (global.monstertype[__ien] != 0(None)) { if (!i_ex(__enemymarker[__ien])) { __enemymarker[__ien] =
scr_dark_marker(global.monstermakex[__ien] + 300, global.monstermakey[__ien], object_get_sprite(global.monsterinstancetype[__ien]));
__enemymarker[__ien].depth = -__ien; } __enemymarker[__ien].__ien = __ien; with (__enemymarker[__ien]) { if (global.monstertype[other.__ien] == 103Tenna) { x = camerax() + 510; y = cameray() + 288;
scr_move_to_point_over_time(camerax() + 526, cameray() + 260, 20);
sprite_index = spr_tenna_point_up; } else if (global.monstertype[other.__ien] == 104Knight) { with (obj_ch3_PTB02_roaringknight) stopsiner2 = true;
scr_move_to_point_over_time(global.monstermakex[__ien], obj_ch3_PTB02_roaringknight.ystart + (cos(obj_ch3_PTB02_roaringknight.siner2 / 8) * 8), 20);
} else {
scr_move_to_point_over_time(global.monstermakex[__ien], global.monstermakey[__ien], 20);
} __doom = instance_create(x, y, obj_doom); __doom.target = id; __doom.alarm[0] = 25; } } } }
(arg0, arg1, arg2, arg3, arg4)
2
{
3
    global.specialbattle = arg1;
4
    global.encounterno = arg0;
5
    if (global.flag[9 battle_music] != 2)
6
    {
7
        global.flag[9 battle_music] = 1;
8
        var batmusic = "battle.ogg";
9
        if (global.chapter == 3)
10
        {
11
            if (global.encounterno == 111 && room == room_board_2)
12
                batmusic = "rudebuster_boss.ogg";
13
            if (room == room_dw_b3bs_watercooler || room == room_dw_teevie_watercooler || room == room_dw_b3bs_zapper_b || room == room_dw_ranking_c)
14
                batmusic = "battle_vapor.ogg";
15
            if (room == room_dw_teevie_chef)
16
                batmusic = "rouxls_battle.ogg";
17
        }
18
        global.batmusic[0] = snd_init(batmusic);
19
        mus_volume(global.batmusic[1], 1, 0);
20
    }
21
    instance_create(0, 0, obj_battleback);
22
    instance_create(0, 0, obj_encounterbasic);
23
    __enemymarker[0] = arg2;
24
    __enemymarker[1] = arg3;
25
    __enemymarker[2] = arg4;
26
    for (__ien = 0; __ien < 3; __ien++)
27
    {
28
        if (global.monstertype[__ien] != 0(None))
29
        {
30
            if (!i_ex(__enemymarker[__ien]))
31
            {
32
                __enemymarker[__ien] = 
scr_dark_marker
scr_dark_marker

function
scr_dark_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; image_xscale = 2; image_yscale = 2; } return thismarker; }
(global.monstermakex[__ien] + 300, global.monstermakey[__ien], object_get_sprite(global.monsterinstancetype[__ien]));
33
                __enemymarker[__ien].depth = -__ien;
34
            }
35
            __enemymarker[__ien].__ien = __ien;
36
            with (__enemymarker[__ien])
37
            {
38
                if (global.monstertype[other.__ien] == 103Tenna)
39
                {
40
                    x = camerax() + 510;
41
                    y = cameray() + 288;
42
                    
scr_move_to_point_over_time
scr_move_to_point_over_time

function
scr_move_to_point_over_time(arg0, arg1, arg2)
{ _mmm = instance_create(x, y, obj_move_to_point); _mmm.target = id; _mmm.movex = arg0; _mmm.movey = arg1; _mmm.movemax = arg2; return _mmm; }
(camerax() + 526, cameray() + 260, 20);
43
                    sprite_index = spr_tenna_point_up;
44
                }
45
                else if (global.monstertype[other.__ien] == 104Knight)
46
                {
47
                    with (obj_ch3_PTB02_roaringknight)
48
                        stopsiner2 = true;
49
                    
scr_move_to_point_over_time
scr_move_to_point_over_time

function
scr_move_to_point_over_time(arg0, arg1, arg2)
{ _mmm = instance_create(x, y, obj_move_to_point); _mmm.target = id; _mmm.movex = arg0; _mmm.movey = arg1; _mmm.movemax = arg2; return _mmm; }
(global.monstermakex[__ien], obj_ch3_PTB02_roaringknight.ystart + (cos(obj_ch3_PTB02_roaringknight.siner2 / 8) * 8), 20);
50
                }
51
                else
52
                {
53
                    
scr_move_to_point_over_time
scr_move_to_point_over_time

function
scr_move_to_point_over_time(arg0, arg1, arg2)
{ _mmm = instance_create(x, y, obj_move_to_point); _mmm.target = id; _mmm.movex = arg0; _mmm.movey = arg1; _mmm.movemax = arg2; return _mmm; }
(global.monstermakex[__ien], global.monstermakey[__ien], 20);
54
                }
55
                __doom = instance_create(x, y, obj_doom);
56
                __doom.target = id;
57
                __doom.alarm[0] = 25;
58
            }
59
        }
60
    }
61
}