Deltarune (Chapter 3) script viewer

← back to main script listing

gml_Object_obj_b1oasis_Step_0

(view raw script w/o annotations or w/e)
1
if (init == 0)
2
    init = 1;
3
if (kr == 0)
4
{
5
    with (obj_mainchara_board)
6
    {
7
        if (name == "kris")
8
            other.kr = id;
9
    }
10
}
11
if (su == 0)
12
{
13
    with (obj_mainchara_board)
14
    {
15
        if (name == "susie")
16
            other.su = id;
17
    }
18
}
19
if (realsusie == 0)
20
{
21
    with (obj_caterpillarchara)
22
    {
23
        if (name == "susie")
24
            other.realsusie = id;
25
    }
26
}
27
if (realralsei == 0)
28
{
29
    with (obj_caterpillarchara)
30
    {
31
        if (name == "ralsei")
32
            other.realralsei = id;
33
    }
34
}
35
if (tenna == 0)
36
{
37
    with (obj_actor_tenna)
38
        other.tenna = id;
39
}
40
if (active == 1 && init == 1 && obj_board_camera.con == 0)
41
{
42
    con = 4;
43
    if (susiewalkcon == 0 && obj_board_camera.con == 0)
44
    {
45
        
scr_pathfind_end
scr_pathfind_end

function
scr_pathfind_end(arg0)
{ with (obj_mainchara_board) { if (name == arg0) { path_end(); path_target_x = -1; path_target_y = -1; is_moving_timer = 0; is_moving = false; } } }
("susie");
46
        sustimer = 0;
47
        var findpoint = 0;
48
        with (obj_board_pointsGet)
49
        {
50
            if (x > 128 && x < 528 && y > 64 && y < 318)
51
                findpoint = id;
52
        }
53
        if (findpoint == 0)
54
        {
55
            susiewalkcon = 3;
56
            sustimer = 0;
57
        }
58
        else
59
        {
60
            
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("susie", findpoint.x, findpoint.y, 0);
61
            susiewalkcon = 1;
62
        }
63
    }
64
    if (susiewalkcon == 1)
65
    {
66
        with (su)
67
        {
68
            if (is_moving == false && is_moving_timer == 0)
69
                other.susiewalkcon = 0;
70
        }
71
    }
72
    if (susiewalkcon == 3)
73
    {
74
        sustimer++;
75
        if (sustimer == 15)
76
        {
77
            
scr_pathfind_to_point
scr_pathfind_to_point

function
scr_pathfind_to_point(arg0, arg1, arg2)
{ var __destx = arg1 + 16; var __desty = arg2 + 16; if (arg1 < 12 && arg2 < 8) { __destx = 128 + (32 * arg1) + 16; __desty = 64 + (32 * arg2) + 16; } with (obj_mainchara_board) { if (name == arg0) { path_end(); is_moving_timer = 0; is_moving = true; path_target_x = __destx; path_target_y = __desty; follow = false; if (argument_count == 4) { if (argument3 != -1) path_end_facing = argument3; } if (argument_count == 5) { if (argument4 != -1) allow_diagonals = argument4; } } } }
("susie", choose(4, 7), 3, 0);
78
            susiewalkcon = 5;
79
            su.sleepy = true;
80
        }
81
    }
82
    if (talkcon == 10 && !bw_ex())
83
    {
84
        var tetalk = stringsetloc(
GREAT performance, Elnina!
"GREAT performance, Elnina!", "obj_b1oasis_slash_Step_0_gml_68_0"
);
85
        if (talker == "lanino1")
86
            tetalk = stringsetloc(
GREAT performance, Lanino!
"GREAT performance, Lanino!", "obj_b1oasis_slash_Step_0_gml_69_0"
);
87
        with (obj_actor_tenna)
88
            bounce = 1;
89
        
scr_couchtalk
scr_couchtalk

function scr_couchclear(arg0) { with (obj_couchwriter) { if (speaker == arg0) instance_destroy(); } } function
scr_couchtalk(arg0, arg1)
{ var ix = -1; var iy = -1; if (argument_count >= 6) { ix = argument4; iy = argument5; } var couchtext = instance_create_depth(ix, iy, 5000, obj_couchwriter); couchtext.mystring = arg0; couchtext.speaker = arg1; if (argument_count >= 3) couchtext.cleartext = argument2; if (argument_count >= 4) couchtext.drawtime = argument3; if (argument_count >= 7) couchtext.customsnd = argument6; if (argument_count >= 8) couchtext.customcolor = argument7; if (argument_count >= 9) couchtext.talkrate = argument8; if (argument_count >= 10) couchtext.talklength = argument9; return couchtext; }
(tetalk, "tenna", 2, 90);
90
        talkcon = 11;
91
    }
92
}
93
else
94
{
95
    timer = 0;
96
    susiewalkcon = 0;
97
    talkcon = 0;
98
}
99
if (talkcon == 11)
100
{
101
    talktimer++;
102
    if (talktimer == 40)
103
    {
104
        with (obj_board_npc)
105
        {
106
            if (extflag == other.talker)
107
            {
108
                var memspeed = image_speed;
109
                image_speed = 0.125;
110
                sprite_index = pose;
111
                scr_delay_var("sprite_index", idle, 120);
112
            }
113
        }
114
    }
115
}