Deltarune script viewer

← back to main script listing

gml_GlobalScript_scr_84_lang_load

(view raw script w/o annotations or w/e)
1
function scr_84_lang_load
scr_84_lang_load

function scr_84_lang_load() { var name = "lang_" + global.lang + ".json"; var orig_filename = working_directory + "lang/" + name; var new_filename = working_directory + "lang-new/" + name; var filename = orig_filename; var type = "orig"; var orig_map = json_decode("{}"); if (!is_english()) { show_debug_message("loading lang: " + orig_filename); orig_map = scr_84_load_map_json(orig_filename); if (file_exists(new_filename)) { var new_map = scr_84_load_map_json(new_filename); var new_date = real(ds_map_find_value(new_map, "date")); var orig_date = real(ds_map_find_value(orig_map, "date")); show_debug_message("orig_date: " + string(orig_date)); show_debug_message(" new_date: " + string(new_date)); if (new_date > orig_date) { show_debug_message("using new language file"); ds_map_destroy(orig_map); orig_map = new_map; filename = new_filename; type = "new(" + string(new_date) + ")"; } else { show_debug_message("using orig language file"); } } ds_map_destroy(global.lang_map); global.lang_map = orig_map; if (!is_english()) { global.jp_data_loaded = true; show_debug_message("loaded: " + filename + ", entries: " + string(ds_map_size(global.lang_map))); } } return type; }
()
2
{
3
    var name = "lang_" + global.lang + ".json";
4
    var orig_filename = working_directory + "lang/" + name;
5
    var new_filename = working_directory + "lang-new/" + name;
6
    var filename = orig_filename;
7
    var type = "orig";
8
    var orig_map = json_decode("{}");
9
    if (!is_english())
10
    {
11
        show_debug_message("loading lang: " + orig_filename);
12
        orig_map = scr_84_load_map_json
scr_84_load_map_json

function scr_84_load_map_json(arg0) { var filename = arg0; if (file_exists(filename)) { var file_buffer = buffer_load(filename); var json = buffer_read(file_buffer, buffer_string); buffer_delete(file_buffer); return json_decode(json); } else { show_debug_message("file: " + filename + "does not exist"); return json_decode("{}"); } }
(orig_filename);
13
        if (file_exists(new_filename))
14
        {
15
            var new_map = scr_84_load_map_json
scr_84_load_map_json

function scr_84_load_map_json(arg0) { var filename = arg0; if (file_exists(filename)) { var file_buffer = buffer_load(filename); var json = buffer_read(file_buffer, buffer_string); buffer_delete(file_buffer); return json_decode(json); } else { show_debug_message("file: " + filename + "does not exist"); return json_decode("{}"); } }
(new_filename);
16
            var new_date = real(ds_map_find_value(new_map, "date"));
17
            var orig_date = real(ds_map_find_value(orig_map, "date"));
18
            show_debug_message("orig_date: " + string(orig_date));
19
            show_debug_message(" new_date: " + string(new_date));
20
            if (new_date > orig_date)
21
            {
22
                show_debug_message("using new language file");
23
                ds_map_destroy(orig_map);
24
                orig_map = new_map;
25
                filename = new_filename;
26
                type = "new(" + string(new_date) + ")";
27
            }
28
            else
29
            {
30
                show_debug_message("using orig language file");
31
            }
32
        }
33
        ds_map_destroy(global.lang_map);
34
        global.lang_map = orig_map;
35
        if (!is_english())
36
        {
37
            global.jp_data_loaded = true;
38
            show_debug_message("loaded: " + filename + ", entries: " + string(ds_map_size(global.lang_map)));
39
        }
40
    }
41
    return type;
42
}