Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_board_grabblenpc_Step_0

(view raw script w/o annotations or w/e)
1
if (init == 0)
2
{
3
    sprite_index = spr_board_enemy_shadowman_down;
4
    grabindex = 2034;
5
    throwindex = grabindex;
6
    image_speed = 0;
7
    if (extflag == "shadowman")
8
        throwindex = 4210;
9
    if (extflag == "elnina")
10
    {
11
        sprite_index = spr_board_elnina_cute;
12
        grabindex = 3888;
13
        throwindex = grabindex;
14
        image_speed = 0.125;
15
    }
16
    if (extflag == "lanino")
17
    {
18
        sprite_index = spr_board_lanino_pose;
19
        grabindex = 4499;
20
        throwindex = grabindex;
21
        image_speed = 0.125;
22
    }
23
}
24
if (active)
25
{
26
    if (con == 0)
27
        
scr_depth_board
scr_depth_board

function
scr_depth_board()
{ depth = 1000000 - ((y * 10) + ((sprite_height - sprite_yoffset) * 10)); } function scr_board_depth() {
scr_depth_board();
}
();
28
}
29
if (con == 1)
30
{
31
    throwmarker = 
scr_board_marker
scr_board_marker

function
scr_board_marker()
{ var _thismarker = instance_create(argument0, argument1, obj_board_marker); _thismarker.sprite_index = argument2; _thismarker.image_xscale = 2; _thismarker.image_yscale = 2; if (argument_count >= 4) _thismarker.image_speed = argument3; if (argument_count >= 5) { if (argument4 != -1) _thismarker.depth = argument4; } if (argument_count >= 6) _thismarker.image_xscale = argument5; if (argument_count >= 6) _thismarker.image_yscale = argument5; if (argument_count >= 7) _thismarker.animateonce = argument6; return _thismarker; }
(x, y, throwindex, image_speed, 100001, 2);
32
    with (instance_create(x, y, obj_board_pointsGet))
33
    {
34
        amount = 50;
35
        event_user(0);
36
    }
37
    with (throwmarker)
38
    {
39
        vspeed = -6;
40
        gravity = 0.9;
41
        friction = 0.1;
42
    }
43
    if (dir == 1)
44
        throwmarker.hspeed = 6 + (right_h() * 2);
45
    if (dir == 3)
46
        throwmarker.hspeed = -(6 + (left_h() * 2));
47
    if (extflag == "shadowman")
48
    {
49
        var hat = 
scr_board_marker
scr_board_marker

function
scr_board_marker()
{ var _thismarker = instance_create(argument0, argument1, obj_board_marker); _thismarker.sprite_index = argument2; _thismarker.image_xscale = 2; _thismarker.image_yscale = 2; if (argument_count >= 4) _thismarker.image_speed = argument3; if (argument_count >= 5) { if (argument4 != -1) _thismarker.depth = argument4; } if (argument_count >= 6) _thismarker.image_xscale = argument5; if (argument_count >= 6) _thismarker.image_yscale = argument5; if (argument_count >= 7) _thismarker.animateonce = argument6; return _thismarker; }
(throwmarker.x + 2, throwmarker.y, spr_board_enemy_shadowman_hit_hat, 0, throwmarker.depth, 2);
50
        hat.vspeed = throwmarker.vspeed - 2;
51
        hat.hspeed = throwmarker.hspeed * 1.1;
52
        hat.friction = throwmarker.friction;
53
        hat.gravity = throwmarker.gravity;
54
        
scr_doom
scr_doom

function
scr_doom(arg0, arg1)
{ with (instance_create_depth(0, 0, 0, obj_doom)) { alarm[0] target = arg0; } }
(hat, 240);
55
    }
56
    setxy(room_width * 4, room_height * 4);
57
    con = 2;
58
}
59
if (con == 2)
60
{
61
    if (throwmarker.y > board_tiley(10))
62
    {
63
        safe_delete(throwmarker);
64
        instance_destroy();
65
    }
66
}