Deltarune (Chapter 5) script viewer

← back to main script listing

gml_Object_obj_cutscene_messagecmd_Step_0

(view raw script w/o annotations or w/e)
1
var _msgno = -1;
2
with (obj_cutscene_master)
3
{
4
    if (i_ex(mydialoguer))
5
    {
6
        if (mydialoguer.active == 1 && i_ex(mydialoguer.writer))
7
            _msgno = mydialoguer.writer.msgno;
8
    }
9
}
10
if (_msgno < 0)
11
    exit;
12
while (_msgno == command_num[i])
13
{
14
    _c = command[i];
15
    
scr_cutscene_commands
scr_cutscene_commands

function
scr_cutscene_commands()
{ if (_c == "delaycmd") { delaycmd = instance_create(0, 0, obj_cutscene_delaycmd); delaycmd.master_object = master_object; delaycmd.command_actor[0] = command_actor[i]; delaycmd.alarm[0] = command_arg1[i]; delaycmd._c = command_arg2[i]; delaycmd.command_arg1[0] = command_arg3[i]; delaycmd.command_arg2[0] = command_arg4[i]; delaycmd.command_arg3[0] = command_arg5[i]; delaycmd.command_arg4[0] = command_arg6[i]; if (instant) { delaycmd.alarm[0] = 0; delaycmd.instant = 1; with (delaycmd) event_user(0); } } if (_c == "msgcmd") { if (!v_ex("msgcmd") || !i_ex(msgcmd)) msgcmd = instance_create(0, 0, obj_cutscene_messagecmd); var _count = msgcmd.count; msgcmd.master_object = master_object; msgcmd.command_actor[_count] = command_actor[i]; msgcmd.command_num[_count] = global.msgno; msgcmd.command[_count] = command_arg1[i]; msgcmd.command_arg1[_count] = command_arg2[i]; msgcmd.command_arg2[_count] = command_arg3[i]; msgcmd.command_arg3[_count] = command_arg4[i]; msgcmd.command_arg4[_count] = command_arg5[i]; msgcmd.count++; } if (_c == "walk") { if (!instant) { actor_move = instance_create(0, 0, obj_move_actor); actor_move.target = command_actor[i]; actor_move.direction_word = command_arg1[i]; actor_move.speed = command_arg2[i]; actor_move.time = command_arg3[i]; with (actor_move) event_user(8); } else { command_actor[i].x += lengthdir_x(command_arg2[i] * command_arg3[i], (
scr_facing_letter_to_number(command_arg1[i]) * 90) - 90);
command_actor[i].y += lengthdir_y(command_arg2[i] * command_arg3[i], (
scr_facing_letter_to_number(command_arg1[i]) * 90) - 90);
} } if (_c == "walkto") { var _object = command_arg1[i]; var _tx = _object.x + command_arg2[i]; var _ty = _object.y + command_arg3[i]; if (command_arg5[i] == true && command_arg6[i] == true) { var _yyoff1 = command_actor[i].sprite_height - command_actor[i].sprite_yoffset; var _yyoff2 = _object.sprite_height - _object.sprite_yoffset; var _xxoff1 = (command_actor[i].sprite_width / 2) - command_actor[i].sprite_xoffset; var _xxoff2 = (_object.sprite_width / 2) - _object.sprite_xoffset; _ty += (_yyoff2 - _yyoff1); _tx += (_xxoff1 - _xxoff2); } else if (command_arg5[i] == true && command_arg6[i] == false) { _tx -= ((command_actor[i].sprite_width / 2) - command_actor[i].sprite_xoffset); _ty -= (command_actor[i].sprite_height - command_actor[i].sprite_yoffset); } command_arg1[i] = _tx; command_arg2[i] = _ty; command_arg3[i] = command_arg4[i]; _c = "walkdirect"; } if (_c == "walkdirect") { if (!instant) { actor_move = instance_create(0, 0, obj_move_to_point); actor_move.target = command_actor[i]; actor_move.movex = command_arg1[i]; actor_move.movey = command_arg2[i]; if (command_arg1[i] == 0) actor_move.movex = command_actor[i].x; if (command_arg2[i] == 0) actor_move.movey = command_actor[i].y; if (command_arg3[i] >= 0) { actor_move.movemax = command_arg3[i]; } else { var __walktime = round(point_distance(command_actor[i].x, command_actor[i].y, command_arg1[i], command_arg2[i]) / -command_arg3[i]); if (__walktime < 1) __walktime = 1; actor_move.movemax = __walktime; if (command_arg4[i] == 1) ...
();
16
    i++;
17
    if (i >= array_length(command))
18
    {
19
        instance_destroy();
20
        break;
21
    }
22
}