Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_encounter_guei_Step_0

(view raw script w/o annotations or w/e)
1
if (con == 0)
2
{
3
    var triggered = false;
4
    if (trig != "")
5
    {
6
        with (obj_trigger)
7
        {
8
            if (extflag == other.trig)
9
            {
10
                if (place_meeting(x, y, obj_mainchara))
11
                    triggered = true;
12
            }
13
        }
14
    }
15
    if (triggered == true)
16
    {
17
        con = 1;
18
        timer = 0;
19
        makeindex = -2;
20
        chasespeed = 0.1;
21
    }
22
}
23
if (con == 1)
24
{
25
    var maxchase = 20;
26
    if (global.interact == 0)
27
        chasespeed = lerp(chasespeed, maxchase, 0.0125);
28
    var targ = 1049;
29
    with (chaser)
30
    {
31
        if (global.interact == 0)
32
            move_towards_point(targ.x + 16, targ.y + 36, other.chasespeed);
33
        else
34
            speed = 0;
35
        var _xloc = (x + 16) - 30;
36
        var _yloc = ((y + 30) - 44) + 12;
37
        if (global.interact == 0)
38
        {
39
            if (i_ex(collision_rectangle(_xloc, _yloc, _xloc + 28, _yloc + 20, obj_mainchara, 0, true)))
40
            {
41
                snd_play(snd_cough, 1, 1.4);
42
                snd_play(snd_paper_rise, 0.7, 1.2);
43
                snd_play(snd_paper_rise, 0.4, 1.8);
44
                snd_play(snd_ghostappear, undefined, 1.6);
45
                global.interact = 1;
46
                speed = 0;
47
                other.con++;
48
                
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("x", x, (x - 60) + 120, 20, 4, "out");
49
                
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("y", y, y - 80, 20);
50
            }
51
        }
52
    }
53
}
54
if (con == 2)
55
{
56
    timer++;
57
    if (timer == 1)
58
        
scr_lerpvar
scr_lerpvar

function
scr_lerpvar()
{ if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
return ___lerpvar; } function scr_lerpvar_respect() { if (argument_count < 6) ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3]);
else ___lerpvar =
scr_lerpvar_instance(id, argument[0], argument[1], argument[2], argument[3], argument[4], argument[5]);
___lerpvar.respectglobalinteract = true; return ___lerpvar; }
("image_alpha", image_alpha, 0, 40, 2, "in");
59
    if (timer == 35)
60
    {
61
        snd_play(snd_tensionhorn);
62
        snd_play_delay(snd_tensionhorn, 10, undefined, 1.1);
63
    }
64
    if (timer == 59)
65
    {
66
        
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; if (global.chapter == 4 && room != room_dw_castle_dojo) global.batmusic[0] = snd_init("ch4_battle.ogg"); else global.batmusic[0] = snd_init("battle.ogg"); } 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]) {
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; } } } }
(150, 0, chaser);
67
        con = 3;
68
        
scr_doom
scr_doom

function
scr_doom(arg0 = id, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; persistent = arg0.persistent; } }
(id, 120);
69
    }
70
}