Deltarune (Chapter 4) script viewer

← back to main script listing

gml_Object_obj_npc_castle_cliff_Create_0

(view raw script w/o annotations or w/e)
1
con = -1;
2
shine = -4;
3
remove_shine = false;
4
var show_shine = false;
5
var pending_items = 
scr_get_cliff_items
scr_get_cliff_items

function
scr_get_cliff_items()
{ var boss_list = []; for (var i = 0; i < (global.chapter - 1); i++) { var chapter = i + 1; var boss_result = scr_get_ura_value(chapter, global.filechoice); if (boss_result > 0) { var boss_data = []; if (boss_result == 3) { if (chapter == 2) { if (boss_result == 3) boss_result = 2; } else { boss_result = 1; } } if (chapter == 3) { if (boss_result == 2) continue; } boss_data[0] = chapter; boss_data[1] = boss_result; boss_list[array_length(boss_list)] = boss_data; } } var pending_items = []; for (var i = 0; i < array_length(boss_list); i++) { var boss_data = boss_list[i]; var boss_chapter = boss_data[0]; var boss_result = boss_data[1]; var boss_item_data = scr_get_boss_item_id(boss_chapter, boss_result); var item_type = boss_item_data[0]; var item_id = boss_item_data[1]; var have_item = scr_has_boss_item("weapon", item_id) || scr_has_boss_item("armor", item_id); if (!have_item) pending_items[array_length(pending_items)] = boss_item_data; } return pending_items; } function scr_has_boss_item(arg0, arg1) { var has_item = false; if (arg0 == "weapon") has_item =
scr_weaponcheck_equipped_any(arg1) || 
scr_weaponcheck_inventory(arg1);
else if (arg0 == "armor") has_item =
scr_armorcheck_equipped_any(arg1) || 
scr_armorcheck_inventory(arg1);
return has_item; } function scr_get_boss_item_id(arg0, arg1) { var _chapter = arg0; var _item_type = (arg1 == 1) ? "weapon" : "armor"; var _item_id = -1; switch (_chapter) { case 2: _item_id = 21; break; case 3: _item_id = 26; break; default: _item_id = 7; break; } var item_data = []; item_data[0] = _item_type; item_data[1] = _item_id; item_data[2] = _chapter; return item_data; } function scr_get_shadow_crystal_flag(arg0) { var _chapter = arg0; var _flag = -1; switch (_chapter) { case 1: _flag = 1646; break; case 2: _flag = 1647; break; case 3: _flag = 1648; break; case 4: _flag = 1649; break; default: ...
();
6
if (array_length(pending_items) > 0)
7
{
8
    
scr_flag_set
scr_flag_set

function
scr_flag_set(arg0, arg1)
{ global.flag[arg0] = arg1; if (
scr_debug())
show_debug_message("*** flag [" + string(arg0) + "] updated: " + string(arg1) + " | " + scr_flag_name_get(arg0)); } function scr_setflag(arg0, arg1) {
scr_flag_set(arg0, arg1);
}
(1644, 0);
9
    show_shine = true;
10
}
11
var hole = 
scr_marker
scr_marker

function
scr_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; } return thismarker; }
(281, 200, spr_darkwest_hole);
12
with (hole)
13
    
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
14
cliff_readable = instance_create(300, 240, obj_readable_room1);
15
cliff_readable.image_xscale = 2;
16
cliff_readable.image_yscale = 2;
17
if (show_shine)
18
{
19
    shine = 
scr_marker
scr_marker

function
scr_marker(arg0, arg1, arg2)
{ thismarker = instance_create(arg0, arg1, obj_marker); with (thismarker) { sprite_index = arg2; image_speed = 0; } return thismarker; }
(320, 235, spr_shine);
20
    shine.image_speed = 0.1;
21
    shine.image_xscale = 2;
22
    shine.image_yscale = 2;
23
    shine.depth = hole.depth - 10;
24
    cliff_readable.extflag = "cliff_items";
25
}
26
if (
scr_flag_get
scr_flag_get

function
scr_flag_get(arg0)
{ var flag_value = global.flag[arg0]; return flag_value; } function scr_flag_name_get(arg0) { if (!global.is_console) { var v = global.flagname[arg0]; return is_undefined(v) ? "*unknown flag*" : v; } else { return ""; } } function scr_getflag(arg0) { return
scr_flag_get(arg0);
}
(659) == 1)
27
{
28
    var hacker_npc = instance_create(400, 204, obj_npc_room);
29
    with (hacker_npc)
30
    {
31
        extflag = "hacker";
32
        normalanim = 4;
33
        sprite_index = spr_npc_cursor_walk_right;
34
        
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
35
    }
36
    var pippins_npc = instance_create(478, 216, obj_npc_room);
37
    with (pippins_npc)
38
    {
39
        extflag = "pippins";
40
        sprite_index = spr_pippins_idle;
41
        
scr_depth
scr_depth

function
scr_depth(arg0 = id, arg1 = 0)
{ with (arg0) depth = 100000 - ((y * 10) + (sprite_height * 10) + (arg1 * 10)); }
();
42
    }
43
}