Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_cliff_petalwarp_Step_0

(view raw script w/o annotations or w/e)
1
var yscale = 
scr_platswap_yscale
scr_platswap_yscale

function
scr_platswap_yscale()
{ with (obj_platswap) return __transition_yscale; return [0, 1]; }
();
2
image_xscale = 1 + (sin(current_time / 300) * 0.05);
3
image_alpha = 0.5 + (sin(current_time / 450) * 0.1);
4
target_alpha = 
scr_approach
scr_approach

function
scr_approach(arg0, arg1, arg2)
{ if (arg0 < arg1) { arg0 += arg2; if (arg0 > arg1) return arg1; } else { arg0 -= arg2; if (arg0 < arg1) return arg1; } return arg0; }
(target_alpha, tangible, 0.1);
5
image_alpha *= (1 - yscale[0]);
6
image_alpha *= target_alpha;
7
image_yscale = 1 - yscale[0];
8
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
(self, -500);
9
leafstorm.depth = depth;
10
leafstorm.active = true;
11
leafstorm.style = 1;
12
if (con == 0 && leafstorm.active)
13
{
14
    if (place_meeting(x, y, obj_mainchara))
15
    {
16
        con = 1;
17
        with (obj_caterpillarchara)
18
        {
19
            if (name == "ralsei")
20
                other.ralsei = self;
21
            if (name == "susie")
22
                other.susie = self;
23
        }
24
        event_user(8);
25
    }
26
    leafstorm.strength = 1.1;
27
}
28
if (con == 1)
29
{
30
    con = 2;
31
    scr_delay_var("con", 3, 1);
32
    global.interact = 1;
33
    cutscene_master = 
scr_cutscene_make
scr_cutscene_make

function
scr_cutscene_make()
{ _cutscene_master = instance_create(0, 0, obj_cutscene_master); _cutscene_master.master_object = id; return _cutscene_master; }
();
34
    
scr_maincharacters_actors
scr_maincharacters_actors

function
scr_maincharacters_actors()
{ if (i_ex(obj_plat_player)) { scr_maincharacters_actors_plat(); exit; } actor_count = 0; kr = 0; kr_actor = instance_create(obj_mainchara.x, obj_mainchara.y, obj_actor);
scr_actor_setup(kr, kr_actor, "kris");
kr_actor.sprite_index = obj_mainchara.sprite_index; kr_actor.depth = obj_mainchara.depth; with (obj_mainchara) visible = 0; for (__jj = 0; __jj < array_length_1d(global.cinstance); __jj++) { if (i_ex(global.cinstance[__jj])) { if (global.cinstance[__jj].name == "susie") { actor_count++; su = __jj + 1; su_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(su, su_actor, "susie");
su_actor.sprite_index = global.cinstance[__jj].sprite_index; su_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "ralsei") { actor_count++; ra = __jj + 1; ra_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(ra, ra_actor, "ralsei");
ra_actor.sprite_index = global.cinstance[__jj].sprite_index; ra_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } if (global.cinstance[__jj].name == "noelle") { actor_count++; no = __jj + 1; no_actor = instance_create(global.cinstance[__jj].x, global.cinstance[__jj].y, obj_actor);
scr_actor_setup(no, no_actor, "noelle");
no_actor.sprite_index = global.cinstance[__jj].sprite_index; no_actor.depth = global.cinstance[__jj].depth; with (global.cinstance[__jj]) visible = 0; } } } }
();
35
    var xx = x;
36
    var yy = y;
37
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
38
    
c_walkdirect
c_walkdirect

function
c_walkdirect(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, arg2, 0);
}
(xx - 19, yy - 80 - (length / 2), 15);
39
    
c_pan_fancy
c_pan_fancy

function
c_pan_fancy(arg0, arg1, arg2, arg3 = 
{ doround: true, easetype: "default" }) {
c_cmd("panfancy", arg0, arg1, arg2, arg3);
} function c_panobj_fancy(arg0, arg1, arg2 = { doround: true, easetype: "default" }) {
c_cmd("panfancyobj", arg0, arg1, arg2);
}
(clamp(xx - 320, 0, room_width - 640), clamp(yy - 80 - 240 - 200, 0, room_height - 480), 80);
40
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(1);
41
    if (susie != -4)
42
    {
43
        
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
44
        
c_walkdirect
c_walkdirect

function
c_walkdirect(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, arg2, 0);
}
(xx - 40, yy - 76, 15);
45
    }
46
    if (ralsei != -4)
47
    {
48
        
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
49
        
c_walkdirect
c_walkdirect

function
c_walkdirect(arg0, arg1, arg2)
{
c_cmd("walkdirect", arg0, arg1, arg2, 0);
}
(xx + 27, yy - 64, 15);
50
    }
51
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
52
    
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "spinner_con", 3);
53
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(1);
54
    c_snd_play(snd_petalwarp);
55
    
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(kr);
56
    
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_krisb_pirouette);
57
    
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(false);
58
    c_lerp_var_instance(kr_actor, "image_speed", 0.16666666666666666, 0.5, 10, 2, "in");
59
    c_lerp_var_instance(id, "k_height", 0, 320, 50, 2, "in");
60
    if (susie != -4)
61
    {
62
        
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(su);
63
        
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_susie_pirouette);
64
        c_lerp_var_instance(su_actor, "image_speed", 0.16666666666666666, 0.5, 10, 2, "in");
65
        
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(false);
66
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "spinner_con", 2);
67
        c_lerp_var_instance(id, "s_height", 0, 320, 50, 2, "in");
68
    }
69
    if (ralsei != -4)
70
    {
71
        
c_sel
c_sel

function
c_sel(arg0)
{
c_cmd("select", arg0, 0, 0, 0);
}
(ra);
72
        
c_sprite
c_sprite

function
c_sprite(arg0)
{
c_cmd("sprite", arg0, 0, 0, 0);
}
(spr_ralsei_pirouette);
73
        c_lerp_var_instance(ra_actor, "image_speed", 0.16666666666666666, 0.5, 10, 2, "in");
74
        
c_autowalk
c_autowalk

function
c_autowalk(arg0)
{
c_cmd("autowalk", arg0, 0, 0, 0);
}
(false);
75
        
c_var_instance
c_var_instance

function
c_var_instance(arg0, arg1, arg2)
{
c_cmd_x("var", arg0, arg1, arg2, 0, 0, 0);
}
(id, "spinner_con", 3);
76
        c_lerp_var_instance(id, "r_height", 0, 320, 50, 2, "in");
77
    }
78
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(15);
79
    
c_fadeout
c_fadeout

function
c_fadeout(arg0)
{
c_cmd("fadeout", arg0, 0, 0, 0);
}
(30);
80
    
c_wait
c_wait

function
c_wait(arg0)
{
c_cmd("wait", arg0, 0, 0, 0);
}
(30);
81
    
c_pannable
c_pannable

function
c_pannable(arg0)
{
c_cmd("pannable", arg0, 0, 0, 0);
}
(0);
82
    
c_actortokris
c_actortokris

function
c_actortokris()
{
c_cmd("actortokris", 0, 0, 0, 0);
}
();
83
    
c_actortocaterpillar
c_actortocaterpillar

function
c_actortocaterpillar()
{
c_cmd("actortocaterpillar", 0, 0, 0, 0);
} function c_actortocaterpillarstill() {
c_cmd("actortocaterpillarstill", 0, 0, 0, 0);
}
();
84
    
c_terminatekillactors
c_terminatekillactors

function
c_terminatekillactors()
{
c_cmd("terminatekillactors", 0, 0, 0, 0);
}
();
85
}
86
if (con == 3)
87
{
88
    if (!instance_exists(obj_cutscene_master))
89
    {
90
        global.facing = 0;
91
        global.interact = 0;
92
        obj_mainchara.cutscene = 0;
93
        obj_mainchara.freeze = false;
94
        
scr_caterpillar_interpolate
scr_caterpillar_interpolate

function
scr_caterpillar_interpolate(arg0 = "none")
{ if (arg0 == "all") { with (obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else if (arg0 == "none") { if (object_index == obj_caterpillarchara) scr_caterpillar_interpolate_old(); } else { with (obj_caterpillarchara) { if (name == arg0) scr_caterpillar_interpolate_old(); } } } function scr_caterinterp(arg0 = "none") {
scr_caterpillar_interpolate(arg0);
} function scr_caterpillar_interpolate_old() { var _newfacing = direction_to_object_bbox(id, 1198, true); remx[0] = obj_mainchara.x; remy[0] = obj_mainchara.y; facing[0] = _newfacing; for (var _iaia = target; _iaia > 0; _iaia -= 1) { remx[_iaia] = lerp(obj_mainchara.x, x + halign, _iaia / target); remy[_iaia] = lerp(obj_mainchara.y, y + valign, _iaia / target); facing[_iaia] = _newfacing; } }
("all");
95
        con = 0;
96
        instance_create(0, 0, obj_persistentfadein);
97
        global.interact = 3;
98
        event_user(7);
99
        room_goto(doorRoom);
100
    }
101
}
102
if (spinner_con > 0)
103
{
104
    if (instance_exists(kr_actor))
105
    {
106
        var _yscale = 0.5;
107
        kr_actor.x = (x + lengthdir_x(length, angle)) - 20;
108
        var _yoff = (lengthdir_y(length, angle) * _yscale) - k_height - kr_actor.sprite_height;
109
        kr_actor.y = y + _yoff;
110
        if (spinner_con >= 2)
111
        {
112
            if (susie != -4)
113
            {
114
                var _offset = 120;
115
                if (ralsei == -4)
116
                    _offset = 180;
117
                su_actor.x = (x + lengthdir_x(length, angle + _offset)) - 20;
118
                _yoff = (lengthdir_y(length, angle + _offset) * _yscale) - k_height - su_actor.sprite_height;
119
                su_actor.y = y + _yoff;
120
            }
121
            else if (ralsei != -4)
122
            {
123
                ra_actor.x = (x + lengthdir_x(length, angle + 180)) - 20;
124
                _yoff = (lengthdir_y(length, angle + 180) * _yscale) - k_height - ra_actor.sprite_height;
125
                ra_actor.y = y + _yoff;
126
            }
127
        }
128
        if (spinner_con >= 3)
129
        {
130
            ra_actor.x = (x + lengthdir_x(length, angle + 240)) - 20;
131
            _yoff = (lengthdir_y(length, angle + 240) * _yscale) - k_height - ra_actor.sprite_height;
132
            ra_actor.y = y + _yoff;
133
        }
134
    }
135
    angle -= rotation;
136
}