diff --git a/PixelComposer.resource_order b/PixelComposer.resource_order index 942876770..185d92a77 100644 --- a/PixelComposer.resource_order +++ b/PixelComposer.resource_order @@ -364,6 +364,7 @@ {"name":"s_node_translate_point","order":14,"path":"sprites/s_node_translate_point/s_node_translate_point.yy",}, {"name":"sh_voronoi_extra","order":13,"path":"shaders/sh_voronoi_extra/sh_voronoi_extra.yy",}, {"name":"o_dialog_textbox_autocomplete","order":7,"path":"objects/o_dialog_textbox_autocomplete/o_dialog_textbox_autocomplete.yy",}, + {"name":"s_node_quasicircle","order":46,"path":"sprites/s_node_quasicircle/s_node_quasicircle.yy",}, {"name":"s_node_loop_input","order":14,"path":"sprites/s_node_loop_input/s_node_loop_input.yy",}, {"name":"node_strand_length_adjust","order":11,"path":"scripts/node_strand_length_adjust/node_strand_length_adjust.yy",}, {"name":"node_mk_blinker","order":11,"path":"scripts/node_mk_blinker/node_mk_blinker.yy",}, @@ -590,6 +591,7 @@ {"name":"s_node_crop","order":2,"path":"sprites/s_node_crop/s_node_crop.yy",}, {"name":"__VFX","order":1,"path":"scripts/__VFX/__VFX.yy",}, {"name":"s_menu_black","order":2,"path":"sprites/s_menu_black/s_menu_black.yy",}, + {"name":"s_node_terminal_trigger","order":41,"path":"sprites/s_node_terminal_trigger/s_node_terminal_trigger.yy",}, {"name":"__node_3d_export","order":2,"path":"scripts/__node_3d_export/__node_3d_export.yy",}, {"name":"buttonAnchor","order":5,"path":"scripts/buttonAnchor/buttonAnchor.yy",}, {"name":"patreon_key","order":1,"path":"extensions/patreon_key/patreon_key.yy",}, @@ -725,6 +727,7 @@ {"name":"Apollo","order":3,"path":"extensions/Apollo/Apollo.yy",}, {"name":"panel_graph_grid_settings","order":7,"path":"scripts/panel_graph_grid_settings/panel_graph_grid_settings.yy",}, {"name":"sh_twirl","order":3,"path":"shaders/sh_twirl/sh_twirl.yy",}, + {"name":"node_gamma_map","order":15,"path":"scripts/node_gamma_map/node_gamma_map.yy",}, {"name":"s_node_shape","order":14,"path":"sprites/s_node_shape/s_node_shape.yy",}, {"name":"time_source","order":25,"path":"scripts/time_source/time_source.yy",}, {"name":"string_formatting","order":5,"path":"scripts/string_formatting/string_formatting.yy",}, @@ -881,6 +884,7 @@ {"name":"o_dialog_drag_folder","order":2,"path":"objects/o_dialog_drag_folder/o_dialog_drag_folder.yy",}, {"name":"node_VFX_effect_repel","order":4,"path":"scripts/node_VFX_effect_repel/node_VFX_effect_repel.yy",}, {"name":"s_node_alpha_cut","order":3,"path":"sprites/s_node_alpha_cut/s_node_alpha_cut.yy",}, + {"name":"sh_gamma_map","order":53,"path":"shaders/sh_gamma_map/sh_gamma_map.yy",}, {"name":"node_iterator_length","order":4,"path":"scripts/node_iterator_length/node_iterator_length.yy",}, {"name":"node_VFX_effect_attract","order":2,"path":"scripts/node_VFX_effect_attract/node_VFX_effect_attract.yy",}, {"name":"sh_d3d_ssao_blur","order":1,"path":"shaders/sh_d3d_ssao_blur/sh_d3d_ssao_blur.yy",}, @@ -948,6 +952,7 @@ {"name":"pcx_parse","order":3,"path":"scripts/pcx_parse/pcx_parse.yy",}, {"name":"node_9slice","order":5,"path":"scripts/node_9slice/node_9slice.yy",}, {"name":"fd_rectangle_add_velocity_surface","order":24,"path":"scripts/fd_rectangle_add_velocity_surface/fd_rectangle_add_velocity_surface.yy",}, + {"name":"s_node_gamma_map","order":60,"path":"sprites/s_node_gamma_map/s_node_gamma_map.yy",}, {"name":"s_node_midi","order":24,"path":"sprites/s_node_midi/s_node_midi.yy",}, {"name":"sh_find_boundary_stretch_y","order":2,"path":"shaders/sh_find_boundary_stretch_y/sh_find_boundary_stretch_y.yy",}, {"name":"BBMOD_Vec2","order":4,"path":"scripts/BBMOD_Vec2/BBMOD_Vec2.yy",}, @@ -1260,9 +1265,11 @@ {"name":"node_simple_shape","order":8,"path":"scripts/node_simple_shape/node_simple_shape.yy",}, {"name":"node_wav_file_write","order":17,"path":"scripts/node_wav_file_write/node_wav_file_write.yy",}, {"name":"node_random","order":5,"path":"scripts/node_random/node_random.yy",}, + {"name":"node_argument","order":24,"path":"scripts/node_argument/node_argument.yy",}, {"name":"Obj_FirebaseFirestore_Collection_Query_LessThan","order":7,"path":"objects/Obj_FirebaseFirestore_Collection_Query_LessThan/Obj_FirebaseFirestore_Collection_Query_LessThan.yy",}, {"name":"node_atlas","order":1,"path":"scripts/node_atlas/node_atlas.yy",}, {"name":"sh_blend_sat","order":18,"path":"shaders/sh_blend_sat/sh_blend_sat.yy",}, + {"name":"node_terminal_trigger","order":25,"path":"scripts/node_terminal_trigger/node_terminal_trigger.yy",}, {"name":"s_node_feedback","order":3,"path":"sprites/s_node_feedback/s_node_feedback.yy",}, {"name":"getGradientData","order":1,"path":"scripts/getGradientData/getGradientData.yy",}, {"name":"s_node_pb_box_inset","order":22,"path":"sprites/s_node_pb_box_inset/s_node_pb_box_inset.yy",}, @@ -1657,6 +1664,7 @@ {"name":"node_path_sample","order":4,"path":"scripts/node_path_sample/node_path_sample.yy",}, {"name":"node_iterate_inline","order":3,"path":"scripts/node_iterate_inline/node_iterate_inline.yy",}, {"name":"sh_3d_depth","order":6,"path":"shaders/sh_3d_depth/sh_3d_depth.yy",}, + {"name":"s_node_argument","order":40,"path":"sprites/s_node_argument/s_node_argument.yy",}, {"name":"__node_3d_displace","order":1,"path":"scripts/__node_3d_displace/__node_3d_displace.yy",}, {"name":"node_vector_dot","order":9,"path":"scripts/node_vector_dot/node_vector_dot.yy",}, {"name":"node_path_map_area","order":1,"path":"scripts/node_path_map_area/node_path_map_area.yy",}, diff --git a/PixelComposer.yyp b/PixelComposer.yyp index 3a0349404..5b46ce6b8 100644 --- a/PixelComposer.yyp +++ b/PixelComposer.yyp @@ -567,6 +567,7 @@ {"id":{"name":"s_node_translate_point","path":"sprites/s_node_translate_point/s_node_translate_point.yy",},}, {"id":{"name":"sh_voronoi_extra","path":"shaders/sh_voronoi_extra/sh_voronoi_extra.yy",},}, {"id":{"name":"o_dialog_textbox_autocomplete","path":"objects/o_dialog_textbox_autocomplete/o_dialog_textbox_autocomplete.yy",},}, + {"id":{"name":"s_node_quasicircle","path":"sprites/s_node_quasicircle/s_node_quasicircle.yy",},}, {"id":{"name":"s_node_loop_input","path":"sprites/s_node_loop_input/s_node_loop_input.yy",},}, {"id":{"name":"node_strand_length_adjust","path":"scripts/node_strand_length_adjust/node_strand_length_adjust.yy",},}, {"id":{"name":"node_mk_blinker","path":"scripts/node_mk_blinker/node_mk_blinker.yy",},}, @@ -823,6 +824,7 @@ {"id":{"name":"s_node_crop","path":"sprites/s_node_crop/s_node_crop.yy",},}, {"id":{"name":"__VFX","path":"scripts/__VFX/__VFX.yy",},}, {"id":{"name":"s_menu_black","path":"sprites/s_menu_black/s_menu_black.yy",},}, + {"id":{"name":"s_node_terminal_trigger","path":"sprites/s_node_terminal_trigger/s_node_terminal_trigger.yy",},}, {"id":{"name":"__node_3d_export","path":"scripts/__node_3d_export/__node_3d_export.yy",},}, {"id":{"name":"buttonAnchor","path":"scripts/buttonAnchor/buttonAnchor.yy",},}, {"id":{"name":"patreon_key","path":"extensions/patreon_key/patreon_key.yy",},}, @@ -976,6 +978,7 @@ {"id":{"name":"panel_graph_grid_settings","path":"scripts/panel_graph_grid_settings/panel_graph_grid_settings.yy",},}, {"id":{"name":"sh_grid","path":"shaders/sh_grid/sh_grid.yy",},}, {"id":{"name":"sh_twirl","path":"shaders/sh_twirl/sh_twirl.yy",},}, + {"id":{"name":"node_gamma_map","path":"scripts/node_gamma_map/node_gamma_map.yy",},}, {"id":{"name":"s_node_shape","path":"sprites/s_node_shape/s_node_shape.yy",},}, {"id":{"name":"time_source","path":"scripts/time_source/time_source.yy",},}, {"id":{"name":"string_formatting","path":"scripts/string_formatting/string_formatting.yy",},}, @@ -1157,6 +1160,7 @@ {"id":{"name":"o_dialog_drag_folder","path":"objects/o_dialog_drag_folder/o_dialog_drag_folder.yy",},}, {"id":{"name":"node_VFX_effect_repel","path":"scripts/node_VFX_effect_repel/node_VFX_effect_repel.yy",},}, {"id":{"name":"s_node_alpha_cut","path":"sprites/s_node_alpha_cut/s_node_alpha_cut.yy",},}, + {"id":{"name":"sh_gamma_map","path":"shaders/sh_gamma_map/sh_gamma_map.yy",},}, {"id":{"name":"node_iterator_length","path":"scripts/node_iterator_length/node_iterator_length.yy",},}, {"id":{"name":"node_VFX_effect_attract","path":"scripts/node_VFX_effect_attract/node_VFX_effect_attract.yy",},}, {"id":{"name":"node_fluid_repulse","path":"scripts/node_fluid_repulse/node_fluid_repulse.yy",},}, @@ -1230,6 +1234,7 @@ {"id":{"name":"pcx_parse","path":"scripts/pcx_parse/pcx_parse.yy",},}, {"id":{"name":"node_9slice","path":"scripts/node_9slice/node_9slice.yy",},}, {"id":{"name":"fd_rectangle_add_velocity_surface","path":"scripts/fd_rectangle_add_velocity_surface/fd_rectangle_add_velocity_surface.yy",},}, + {"id":{"name":"s_node_gamma_map","path":"sprites/s_node_gamma_map/s_node_gamma_map.yy",},}, {"id":{"name":"s_node_midi","path":"sprites/s_node_midi/s_node_midi.yy",},}, {"id":{"name":"sh_find_boundary_stretch_y","path":"shaders/sh_find_boundary_stretch_y/sh_find_boundary_stretch_y.yy",},}, {"id":{"name":"sprite_add_functions","path":"scripts/sprite_add_functions/sprite_add_functions.yy",},}, @@ -1581,10 +1586,12 @@ {"id":{"name":"fd_rectangle_get_acceleration_a","path":"scripts/fd_rectangle_get_acceleration_a/fd_rectangle_get_acceleration_a.yy",},}, {"id":{"name":"node_pb_box","path":"scripts/node_pb_box/node_pb_box.yy",},}, {"id":{"name":"node_random","path":"scripts/node_random/node_random.yy",},}, + {"id":{"name":"node_argument","path":"scripts/node_argument/node_argument.yy",},}, {"id":{"name":"Obj_FirebaseFirestore_Collection_Query_LessThan","path":"objects/Obj_FirebaseFirestore_Collection_Query_LessThan/Obj_FirebaseFirestore_Collection_Query_LessThan.yy",},}, {"id":{"name":"sh_channel_A","path":"shaders/sh_channel_A/sh_channel_A.yy",},}, {"id":{"name":"node_atlas","path":"scripts/node_atlas/node_atlas.yy",},}, {"id":{"name":"sh_blend_sat","path":"shaders/sh_blend_sat/sh_blend_sat.yy",},}, + {"id":{"name":"node_terminal_trigger","path":"scripts/node_terminal_trigger/node_terminal_trigger.yy",},}, {"id":{"name":"s_node_feedback","path":"sprites/s_node_feedback/s_node_feedback.yy",},}, {"id":{"name":"getGradientData","path":"scripts/getGradientData/getGradientData.yy",},}, {"id":{"name":"s_node_character","path":"sprites/s_node_character/s_node_character.yy",},}, @@ -2041,6 +2048,7 @@ {"id":{"name":"node_path_sample","path":"scripts/node_path_sample/node_path_sample.yy",},}, {"id":{"name":"node_iterate_inline","path":"scripts/node_iterate_inline/node_iterate_inline.yy",},}, {"id":{"name":"sh_3d_depth","path":"shaders/sh_3d_depth/sh_3d_depth.yy",},}, + {"id":{"name":"s_node_argument","path":"sprites/s_node_argument/s_node_argument.yy",},}, {"id":{"name":"__node_3d_displace","path":"scripts/__node_3d_displace/__node_3d_displace.yy",},}, {"id":{"name":"node_vector_dot","path":"scripts/node_vector_dot/node_vector_dot.yy",},}, {"id":{"name":"o_dialog_arrayBox","path":"objects/o_dialog_arrayBox/o_dialog_arrayBox.yy",},}, diff --git a/fonts/_f_sdf/_f_sdf.old.png b/fonts/_f_sdf/_f_sdf.old.png index ca4a04dfa..af0235be9 100644 Binary files a/fonts/_f_sdf/_f_sdf.old.png and b/fonts/_f_sdf/_f_sdf.old.png differ diff --git a/fonts/_f_sdf/_f_sdf.png b/fonts/_f_sdf/_f_sdf.png index af0235be9..163402c71 100644 Binary files a/fonts/_f_sdf/_f_sdf.png and b/fonts/_f_sdf/_f_sdf.png differ diff --git a/fonts/_f_sdf_medium/_f_sdf_medium.old.png b/fonts/_f_sdf_medium/_f_sdf_medium.old.png index f66d04899..af596078b 100644 Binary files a/fonts/_f_sdf_medium/_f_sdf_medium.old.png and b/fonts/_f_sdf_medium/_f_sdf_medium.old.png differ diff --git a/fonts/_f_sdf_medium/_f_sdf_medium.png b/fonts/_f_sdf_medium/_f_sdf_medium.png index af596078b..13a399c7c 100644 Binary files a/fonts/_f_sdf_medium/_f_sdf_medium.png and b/fonts/_f_sdf_medium/_f_sdf_medium.png differ diff --git a/objects/o_main/Alarm_0.gml b/objects/o_main/Alarm_0.gml deleted file mode 100644 index 8e2ba8b85..000000000 --- a/objects/o_main/Alarm_0.gml +++ /dev/null @@ -1,2 +0,0 @@ -/// @description force update -Render(); diff --git a/objects/o_main/Alarm_2.gml b/objects/o_main/Alarm_2.gml deleted file mode 100644 index cec0e4270..000000000 --- a/objects/o_main/Alarm_2.gml +++ /dev/null @@ -1,3 +0,0 @@ -/// @description late parameter load -load_file_path(file_open_parameter); -alarm[0] = 10; \ No newline at end of file diff --git a/objects/o_main/Alarm_3.gml b/objects/o_main/Alarm_3.gml deleted file mode 100644 index 85684b183..000000000 --- a/objects/o_main/Alarm_3.gml +++ /dev/null @@ -1,4 +0,0 @@ -/// @description file drop -#region drop - PANEL_GRAPH.stepBegin(); -#endregion diff --git a/objects/o_main/Create_0.gml b/objects/o_main/Create_0.gml index 8c37bf133..8fc822f1a 100644 --- a/objects/o_main/Create_0.gml +++ b/objects/o_main/Create_0.gml @@ -310,4 +310,56 @@ //instance_create(0, 0, o_video_banner, { title: "Trail effect" }); //instance_create_depth(0, 0, -32000, FLIP_Domain); //instance_create_depth(0, 0, -32000, FLIP_Domain); +#endregion + +#region arguments + alarm[1] = 2; + + globalvar PROGRAM_ARGUMENTS; + PROGRAM_ARGUMENTS = {}; + + var paramCount = parameter_count(); + var paramType = "path"; + + for( var i = 0; i < paramCount; i++ ) { + var param = parameter_string(i); + print($" >>> params {i}: {param}"); + + if(string_starts_with(param, "--")) { + switch(param) { + case "--crashed" : + if(PREFERENCES.show_crash_dialog) + run_in(1, function() { dialogCall(o_dialog_crashed); }); + break; + + case "--h" : + draw_enable_drawevent(false); + run_in(3, Terminal_Trigger); + break; + } + + } else if(string_starts_with(param, "-")) { + paramType = string_trim(param, ["-"]); + + } else if(paramType == "path") { + var path = param; + path = string_replace_all(path, "\n", ""); + path = string_replace_all(path, "\"", ""); + + if(file_exists_empty(path) && filename_ext(path) == ".pxc") + PROGRAM_ARGUMENTS[$ string_trim(paramType, ["-"])] = path; + + } else { + PROGRAM_ARGUMENTS[$ paramType] = param; + } + } + + if(struct_exists(PROGRAM_ARGUMENTS, "path")) { + var path = PROGRAM_ARGUMENTS.path; + + if(PROJECT.path != path) { + file_open_parameter = path; + run_in(1, function() { load_file_path(file_open_parameter); }); + } + } #endregion \ No newline at end of file diff --git a/objects/o_main/Other_2.gml b/objects/o_main/Other_2.gml index 188d3a9d6..7a42b12a9 100644 --- a/objects/o_main/Other_2.gml +++ b/objects/o_main/Other_2.gml @@ -110,25 +110,6 @@ directory_set_current_working(DIRECTORY); #endregion -#region parameter - alarm[1] = 2; - - if(parameter_count() > 1) { - var path = parameter_string(1); - if(path == "--crashed") { - if(PREFERENCES.show_crash_dialog) dialogCall(o_dialog_crashed); - } else { - path = string_replace_all(path, "\n", ""); - path = string_replace_all(path, "\"", ""); - - if(file_exists_empty(path) && filename_ext(path) == ".pxc") { - file_open_parameter = path; - alarm[2] = 3; - } - } - } -#endregion - #region lua //lua_error_handler = _lua_error; #endregion diff --git a/objects/o_main/o_main.yy b/objects/o_main/o_main.yy index b5e440b85..f00a07af1 100644 --- a/objects/o_main/o_main.yy +++ b/objects/o_main/o_main.yy @@ -7,14 +7,11 @@ {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":64,"eventType":8,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":1,"eventType":3,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":0,"eventType":3,"isDnD":false,}, - {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":0,"eventType":2,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":2,"eventType":7,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":62,"eventType":7,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":1,"eventType":2,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":75,"eventType":8,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":4,"eventType":7,"isDnD":false,}, - {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":2,"eventType":2,"isDnD":false,}, - {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":3,"eventType":2,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":3,"eventType":7,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":1,"eventType":5,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":1,"eventType":10,"isDnD":false,}, diff --git a/scripts/display_refresh/display_refresh.gml b/scripts/display_refresh/display_refresh.gml index 60dea3815..481a99f83 100644 --- a/scripts/display_refresh/display_refresh.gml +++ b/scripts/display_refresh/display_refresh.gml @@ -16,6 +16,6 @@ function display_refresh() { PANEL_GRAPH.fullView(); PANEL_PREVIEW.fullView(); - o_main.alarm[0] = 10; + run_in(10, Render); PREF_SAVE(); } \ No newline at end of file diff --git a/scripts/globals/globals.gml b/scripts/globals/globals.gml index 79fae4b42..d216d915a 100644 --- a/scripts/globals/globals.gml +++ b/scripts/globals/globals.gml @@ -28,10 +28,10 @@ globalvar VERSION, SAVE_VERSION, VERSION_STRING, BUILD_NUMBER, LATEST_VERSION; LATEST_VERSION = 11600; - VERSION = 11650; - SAVE_VERSION = 11650; - VERSION_STRING = "1.16.5.0"; - BUILD_NUMBER = 11650; + VERSION = 11660; + SAVE_VERSION = 11660; + VERSION_STRING = "1.16.6.0"; + BUILD_NUMBER = 11660; globalvar APPEND_MAP; APPEND_MAP = ds_map_create(); diff --git a/scripts/node_argument/node_argument.gml b/scripts/node_argument/node_argument.gml new file mode 100644 index 000000000..a86d03658 --- /dev/null +++ b/scripts/node_argument/node_argument.gml @@ -0,0 +1,42 @@ +function Node_Argument(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { + name = "Argument"; + w = 96; + min_h = 32 + 24 * 1; + + draw_padding = 8; + + inputs[| 0] = nodeValue("Tag", self, JUNCTION_CONNECT.input, VALUE_TYPE.text, ""); + + inputs[| 1] = nodeValue("Type", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0) + .setDisplay(VALUE_DISPLAY.enum_scroll, [ "String", "Number" ]); + + outputs[| 0] = nodeValue("Value", self, JUNCTION_CONNECT.output, VALUE_TYPE.text, ""); + + static step = function() { + var typ = getInputData(1); + + switch(typ) { + case 0 : outputs[| 0].setType(VALUE_TYPE.text); break; + case 1 : outputs[| 0].setType(VALUE_TYPE.float); break; + } + } + + static update = function() { + var tag = getInputData(0); + var typ = getInputData(1); + var val = struct_try_get(PROGRAM_ARGUMENTS, tag, ""); + + switch(typ) { + case 0 : outputs[| 0].setValue(val); break; + case 1 : outputs[| 0].setValue(toNumber(val)); break; + } + } + + static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) { + var bbox = drawGetBbox(xx, yy, _s); + var tag = getInputData(0); + + draw_set_text(f_sdf, fa_center, fa_center, COLORS._main_text); + draw_text_bbox(bbox, $"-{tag}"); + } +} \ No newline at end of file diff --git a/scripts/node_argument/node_argument.yy b/scripts/node_argument/node_argument.yy new file mode 100644 index 000000000..796cf61f9 --- /dev/null +++ b/scripts/node_argument/node_argument.yy @@ -0,0 +1,11 @@ +{ + "resourceType": "GMScript", + "resourceVersion": "1.0", + "name": "node_argument", + "isCompatibility": false, + "isDnD": false, + "parent": { + "name": "misc", + "path": "folders/nodes/data/misc.yy", + }, +} \ No newline at end of file diff --git a/scripts/node_argument/node_outline.yy b/scripts/node_argument/node_outline.yy new file mode 100644 index 000000000..86468bc09 --- /dev/null +++ b/scripts/node_argument/node_outline.yy @@ -0,0 +1,12 @@ +{ + "isDnD": false, + "isCompatibility": false, + "parent": { + "name": "process", + "path": "folders/nodes/data/process.yy", + }, + "resourceVersion": "1.0", + "name": "node_outline", + "tags": [], + "resourceType": "GMScript", +} \ No newline at end of file diff --git a/scripts/node_gamma_map/node_color_adjustment.yy b/scripts/node_gamma_map/node_color_adjustment.yy new file mode 100644 index 000000000..8df16cc8c --- /dev/null +++ b/scripts/node_gamma_map/node_color_adjustment.yy @@ -0,0 +1,12 @@ +{ + "isDnD": false, + "isCompatibility": false, + "parent": { + "name": "filter", + "path": "folders/nodes/data/filter.yy", + }, + "resourceVersion": "1.0", + "name": "node_color_adjustment", + "tags": [], + "resourceType": "GMScript", +} \ No newline at end of file diff --git a/scripts/node_gamma_map/node_color_replacement.yy b/scripts/node_gamma_map/node_color_replacement.yy new file mode 100644 index 000000000..024aa6a80 --- /dev/null +++ b/scripts/node_gamma_map/node_color_replacement.yy @@ -0,0 +1,12 @@ +{ + "isDnD": false, + "isCompatibility": false, + "parent": { + "name": "process", + "path": "folders/nodes/data/process.yy", + }, + "resourceVersion": "1.0", + "name": "node_color_replacement", + "tags": [], + "resourceType": "GMScript", +} \ No newline at end of file diff --git a/scripts/node_gamma_map/node_gamma_map.gml b/scripts/node_gamma_map/node_gamma_map.gml new file mode 100644 index 000000000..ac63a6ab7 --- /dev/null +++ b/scripts/node_gamma_map/node_gamma_map.gml @@ -0,0 +1,27 @@ +function Node_Gamma_Map(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor { + name = "Gamma Map"; + + inputs[| 0] = nodeValue("Surface in", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, 0); + + inputs[| 1] = nodeValue("Invert", self, JUNCTION_CONNECT.input, VALUE_TYPE.boolean, false); + + inputs[| 2] = nodeValue("Active", self, JUNCTION_CONNECT.input, VALUE_TYPE.boolean, true); + active_index = 2; + + input_display_list = [ 2, 0, 1, ]; + + outputs[| 0] = nodeValue("Surface out", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); + + attribute_surface_depth(); + + static processData = function(_outSurf, _data, _output_index, _array_index) { #region + + surface_set_shader(_outSurf, sh_gamma_map); + shader_set_i("invert", _data[1]) + + draw_surface_safe(_data[0], 0, 0); + surface_reset_shader(); + + return _outSurf; + } #endregion +} \ No newline at end of file diff --git a/scripts/node_gamma_map/node_gamma_map.yy b/scripts/node_gamma_map/node_gamma_map.yy new file mode 100644 index 000000000..67333746e --- /dev/null +++ b/scripts/node_gamma_map/node_gamma_map.yy @@ -0,0 +1,11 @@ +{ + "resourceType": "GMScript", + "resourceVersion": "1.0", + "name": "node_gamma_map", + "isCompatibility": false, + "isDnD": false, + "parent": { + "name": "colors", + "path": "folders/nodes/data/filter/colors.yy", + }, +} \ No newline at end of file diff --git a/scripts/node_gamma_map/node_greyscale.yy b/scripts/node_gamma_map/node_greyscale.yy new file mode 100644 index 000000000..ee372977e --- /dev/null +++ b/scripts/node_gamma_map/node_greyscale.yy @@ -0,0 +1,12 @@ +{ + "isDnD": false, + "isCompatibility": false, + "parent": { + "name": "filter", + "path": "folders/nodes/data/filter.yy", + }, + "resourceVersion": "1.0", + "name": "node_greyscale", + "tags": [], + "resourceType": "GMScript", +} \ No newline at end of file diff --git a/scripts/node_gamma_map/node_outline.yy b/scripts/node_gamma_map/node_outline.yy new file mode 100644 index 000000000..86468bc09 --- /dev/null +++ b/scripts/node_gamma_map/node_outline.yy @@ -0,0 +1,12 @@ +{ + "isDnD": false, + "isCompatibility": false, + "parent": { + "name": "process", + "path": "folders/nodes/data/process.yy", + }, + "resourceVersion": "1.0", + "name": "node_outline", + "tags": [], + "resourceType": "GMScript", +} \ No newline at end of file diff --git a/scripts/node_print/node_print.gml b/scripts/node_print/node_print.gml index 90d6a0006..2c5acf021 100644 --- a/scripts/node_print/node_print.gml +++ b/scripts/node_print/node_print.gml @@ -1,16 +1,14 @@ function Node_Print(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { - name = "Print"; - - w = 96; + name = "Print"; + w = 96; min_h = 32 + 24 * 1; + draw_padding = 8; inputs[| 0] = nodeValue("Active", self, JUNCTION_CONNECT.input, VALUE_TYPE.boolean, true); inputs[| 1] = nodeValue("Text", self, JUNCTION_CONNECT.input, VALUE_TYPE.text, ""); - //inputs[| 2] = nodeValue("Icon", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone); - static update = function() { var act = getInputData(0); var txt = getInputData(1); diff --git a/scripts/node_registry/node_registry.gml b/scripts/node_registry/node_registry.gml index 8b2de963b..49db37cd6 100644 --- a/scripts/node_registry/node_registry.gml +++ b/scripts/node_registry/node_registry.gml @@ -558,6 +558,7 @@ function __initNodes() { addNodeObject(filter, "Curve", s_node_curve_edit, "Node_Curve", [1, Node_Curve],, "Adjust brightness of an image using curves.").setVersion(1120); addNodeObject(filter, "Threshold", s_node_threshold, "Node_Threshold", [1, Node_Threshold],, "Set a threshold where pixel darker will becomes black, and brighter to white. Also works with alpha.").setVersion(1080); addNodeObject(filter, "Alpha Cutoff", s_node_alpha_cut, "Node_Alpha_Cutoff", [1, Node_Alpha_Cutoff], ["remove alpha"], "Remove pixel with low alpha value."); + addNodeObject(filter, "Gamma Map", s_node_gamma_map, "Node_Gamma_Map", [1, Node_Gamma_Map]).setVersion(11660); ds_list_add(filter, "Conversions"); addNodeObject(filter, "RGBA Extract", s_node_RGB, "Node_RGB_Channel", [1, Node_RGB_Channel], ["channel extract"], "Extract RGBA channel on an image, each channel becomes its own image."); @@ -657,7 +658,7 @@ function __initNodes() { addNodeObject(generator, "Pytagorean Tile", s_node_pytagorean_tile, "Node_Pytagorean_Tile", [1, Node_Pytagorean_Tile],, "Generate Pytagorean tile pattern.").patreonExtra(); addNodeObject(generator, "Herringbone Tile", s_node_herringbone_tile, "Node_Herringbone_Tile", [1, Node_Herringbone_Tile],, "Generate Herringbone tile pattern.").patreonExtra(); addNodeObject(generator, "Random Tile", s_node_random_tile, "Node_Random_Tile", [1, Node_Random_Tile],, "Generate Random tile pattern.").patreonExtra(); - addNodeObject(generator, "Quasicrystal", s_node_random_tile, "Node_Quasicrystal", [1, Node_Quasicrystal]).setVersion(11660); + addNodeObject(generator, "Quasicrystal", s_node_quasicircle, "Node_Quasicrystal", [1, Node_Quasicrystal]).setVersion(11660); ds_list_add(generator, "Populate"); addNodeObject(generator, "Repeat", s_node_repeat, "Node_Repeat", [1, Node_Repeat],, "Repeat image multiple times linearly, or in grid pattern.").setVersion(1100); @@ -929,6 +930,8 @@ function __initNodes() { addNodeObject(node, "Project Data", s_node_project_data, "Node_Project_Data", [1, Node_Project_Data]).setVersion(11650); ds_list_add(node, "System"); + addNodeObject(node, "Argument", s_node_argument, "Node_Argument", [1, Node_Argument]).setVersion(11660); + addNodeObject(node, "Terminal trigger", s_node_terminal_trigger, "Node_Terminal_Trigger", [1, Node_Terminal_Trigger]).setVersion(11660); addNodeObject(node, "Execute Shell", s_node_shell_excecute, "Node_Shell", [1, Node_Shell], ["terminal", "execute", "run"], "Execute shell script.").setVersion(11530); addNodeObject(node, "Monitor Capture", s_node_monitor_capture, "Node_Monitor_Capture", [1, Node_Monitor_Capture]); addNodeObject(node, "GUI In", s_node_gui_in, "Node_Application_In", [1, Node_Application_In]); diff --git a/scripts/node_terminal_trigger/node_outline.yy b/scripts/node_terminal_trigger/node_outline.yy new file mode 100644 index 000000000..86468bc09 --- /dev/null +++ b/scripts/node_terminal_trigger/node_outline.yy @@ -0,0 +1,12 @@ +{ + "isDnD": false, + "isCompatibility": false, + "parent": { + "name": "process", + "path": "folders/nodes/data/process.yy", + }, + "resourceVersion": "1.0", + "name": "node_outline", + "tags": [], + "resourceType": "GMScript", +} \ No newline at end of file diff --git a/scripts/node_terminal_trigger/node_terminal_trigger.gml b/scripts/node_terminal_trigger/node_terminal_trigger.gml new file mode 100644 index 000000000..99f05afdf --- /dev/null +++ b/scripts/node_terminal_trigger/node_terminal_trigger.gml @@ -0,0 +1,26 @@ +function Node_Terminal_Trigger(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { + name = "Terminal Trigger"; + w = 96; + min_h = 32 + 24 * 1; + + draw_padding = 8; + + outputs[| 0] = nodeValue("Terminal", self, JUNCTION_CONNECT.output, VALUE_TYPE.trigger, noone); + + static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) { + var bbox = drawGetBbox(xx, yy, _s); + + draw_sprite_bbox(s_node_terminal_trigger, 0, bbox); + } +} + +function Terminal_Trigger() { + var keys = ds_map_keys_to_array(PROJECT.nodeMap); + + for( var i = 0, n = array_length(keys); i < n; i++ ) { + var node = PROJECT.nodeMap[? keys[i]]; + if(!is_instanceof(node, Node_Terminal_Trigger)) continue; + + node.outputs[| 0].setValue(true); + } +} \ No newline at end of file diff --git a/scripts/node_terminal_trigger/node_terminal_trigger.yy b/scripts/node_terminal_trigger/node_terminal_trigger.yy new file mode 100644 index 000000000..ea189168c --- /dev/null +++ b/scripts/node_terminal_trigger/node_terminal_trigger.yy @@ -0,0 +1,11 @@ +{ + "resourceType": "GMScript", + "resourceVersion": "1.0", + "name": "node_terminal_trigger", + "isCompatibility": false, + "isDnD": false, + "parent": { + "name": "misc", + "path": "folders/nodes/data/misc.yy", + }, +} \ No newline at end of file diff --git a/shaders/sh_gamma_map/sh_gamma_map.fsh b/shaders/sh_gamma_map/sh_gamma_map.fsh new file mode 100644 index 000000000..81fd24a04 --- /dev/null +++ b/shaders/sh_gamma_map/sh_gamma_map.fsh @@ -0,0 +1,11 @@ +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +uniform int invert; + +void main() { + vec4 c = texture2D( gm_BaseTexture, v_vTexcoord ); + c.rgb = pow(c.rgb, invert == 1? vec3(2.2) : vec3(1. / 2.2)); + + gl_FragColor = c; +} diff --git a/shaders/sh_gamma_map/sh_gamma_map.vsh b/shaders/sh_gamma_map/sh_gamma_map.vsh new file mode 100644 index 000000000..3900c20f4 --- /dev/null +++ b/shaders/sh_gamma_map/sh_gamma_map.vsh @@ -0,0 +1,19 @@ +// +// Simple passthrough vertex shader +// +attribute vec3 in_Position; // (x,y,z) +//attribute vec3 in_Normal; // (x,y,z) unused in this shader. +attribute vec4 in_Colour; // (r,g,b,a) +attribute vec2 in_TextureCoord; // (u,v) + +varying vec2 v_vTexcoord; +varying vec4 v_vColour; + +void main() +{ + vec4 object_space_pos = vec4( in_Position.x, in_Position.y, in_Position.z, 1.0); + gl_Position = gm_Matrices[MATRIX_WORLD_VIEW_PROJECTION] * object_space_pos; + + v_vColour = in_Colour; + v_vTexcoord = in_TextureCoord; +} diff --git a/shaders/sh_gamma_map/sh_gamma_map.yy b/shaders/sh_gamma_map/sh_gamma_map.yy new file mode 100644 index 000000000..50533b200 --- /dev/null +++ b/shaders/sh_gamma_map/sh_gamma_map.yy @@ -0,0 +1,10 @@ +{ + "resourceType": "GMShader", + "resourceVersion": "1.0", + "name": "sh_gamma_map", + "parent": { + "name": "filter", + "path": "folders/shader/filter.yy", + }, + "type": 1, +} \ No newline at end of file diff --git a/sprites/s_node_argument/db6c7051-9ecc-4d6d-9c76-c437b15bda99.png b/sprites/s_node_argument/db6c7051-9ecc-4d6d-9c76-c437b15bda99.png new file mode 100644 index 000000000..798451dcd Binary files /dev/null and b/sprites/s_node_argument/db6c7051-9ecc-4d6d-9c76-c437b15bda99.png differ diff --git a/sprites/s_node_argument/layers/db6c7051-9ecc-4d6d-9c76-c437b15bda99/60432ef3-1e30-40eb-8ad4-6aa5e1d09697.png b/sprites/s_node_argument/layers/db6c7051-9ecc-4d6d-9c76-c437b15bda99/60432ef3-1e30-40eb-8ad4-6aa5e1d09697.png new file mode 100644 index 000000000..798451dcd Binary files /dev/null and b/sprites/s_node_argument/layers/db6c7051-9ecc-4d6d-9c76-c437b15bda99/60432ef3-1e30-40eb-8ad4-6aa5e1d09697.png differ diff --git a/sprites/s_node_argument/s_node_argument.yy b/sprites/s_node_argument/s_node_argument.yy new file mode 100644 index 000000000..fb7223e79 --- /dev/null +++ b/sprites/s_node_argument/s_node_argument.yy @@ -0,0 +1,74 @@ +{ + "resourceType": "GMSprite", + "resourceVersion": "1.0", + "name": "s_node_argument", + "bbox_bottom": 52, + "bbox_left": 2, + "bbox_right": 61, + "bbox_top": 12, + "bboxMode": 0, + "collisionKind": 1, + "collisionTolerance": 0, + "DynamicTexturePage": false, + "edgeFiltering": false, + "For3D": false, + "frames": [ + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"db6c7051-9ecc-4d6d-9c76-c437b15bda99",}, + ], + "gridX": 0, + "gridY": 0, + "height": 64, + "HTile": false, + "layers": [ + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"60432ef3-1e30-40eb-8ad4-6aa5e1d09697","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + ], + "nineSlice": null, + "origin": 4, + "parent": { + "name": "misc", + "path": "folders/nodes/icons/misc.yy", + }, + "preMultiplyAlpha": false, + "sequence": { + "resourceType": "GMSequence", + "resourceVersion": "1.4", + "name": "s_node_argument", + "autoRecord": true, + "backdropHeight": 768, + "backdropImageOpacity": 0.5, + "backdropImagePath": "", + "backdropWidth": 1366, + "backdropXOffset": 0.0, + "backdropYOffset": 0.0, + "events": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "eventStubScript": null, + "eventToFunction": {}, + "length": 1.0, + "lockOrigin": false, + "moments": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "playback": 1, + "playbackSpeed": 30.0, + "playbackSpeedType": 0, + "showBackdrop": true, + "showBackdropImage": false, + "timeUnits": 1, + "tracks": [ + {"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[ + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"db6c7051-9ecc-4d6d-9c76-c437b15bda99","path":"sprites/s_node_argument/s_node_argument.yy",},},},"Disabled":false,"id":"8b31f110-65e2-4ead-8861-f1b8a3d48832","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange": null, + "volume": 1.0, + "xorigin": 32, + "yorigin": 32, + }, + "swatchColours": null, + "swfPrecision": 2.525, + "textureGroupId": { + "name": "Default", + "path": "texturegroups/Default", + }, + "type": 0, + "VTile": false, + "width": 64, +} \ No newline at end of file diff --git a/sprites/s_node_gamma_map/79e007f1-c3de-4e22-8196-e9c05e94265a.png b/sprites/s_node_gamma_map/79e007f1-c3de-4e22-8196-e9c05e94265a.png new file mode 100644 index 000000000..20341df1c Binary files /dev/null and b/sprites/s_node_gamma_map/79e007f1-c3de-4e22-8196-e9c05e94265a.png differ diff --git a/sprites/s_node_gamma_map/layers/79e007f1-c3de-4e22-8196-e9c05e94265a/ada73b22-659b-481a-8d1c-7e0d8d3f18a1.png b/sprites/s_node_gamma_map/layers/79e007f1-c3de-4e22-8196-e9c05e94265a/ada73b22-659b-481a-8d1c-7e0d8d3f18a1.png new file mode 100644 index 000000000..20341df1c Binary files /dev/null and b/sprites/s_node_gamma_map/layers/79e007f1-c3de-4e22-8196-e9c05e94265a/ada73b22-659b-481a-8d1c-7e0d8d3f18a1.png differ diff --git a/sprites/s_node_gamma_map/s_node_gamma_map.yy b/sprites/s_node_gamma_map/s_node_gamma_map.yy new file mode 100644 index 000000000..6fe342fea --- /dev/null +++ b/sprites/s_node_gamma_map/s_node_gamma_map.yy @@ -0,0 +1,74 @@ +{ + "resourceType": "GMSprite", + "resourceVersion": "1.0", + "name": "s_node_gamma_map", + "bbox_bottom": 57, + "bbox_left": 3, + "bbox_right": 60, + "bbox_top": 6, + "bboxMode": 0, + "collisionKind": 1, + "collisionTolerance": 0, + "DynamicTexturePage": false, + "edgeFiltering": false, + "For3D": false, + "frames": [ + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"79e007f1-c3de-4e22-8196-e9c05e94265a",}, + ], + "gridX": 0, + "gridY": 0, + "height": 64, + "HTile": false, + "layers": [ + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"ada73b22-659b-481a-8d1c-7e0d8d3f18a1","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + ], + "nineSlice": null, + "origin": 4, + "parent": { + "name": "filter", + "path": "folders/nodes/icons/filter.yy", + }, + "preMultiplyAlpha": false, + "sequence": { + "resourceType": "GMSequence", + "resourceVersion": "1.4", + "name": "s_node_gamma_map", + "autoRecord": true, + "backdropHeight": 768, + "backdropImageOpacity": 0.5, + "backdropImagePath": "", + "backdropWidth": 1366, + "backdropXOffset": 0.0, + "backdropYOffset": 0.0, + "events": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "eventStubScript": null, + "eventToFunction": {}, + "length": 1.0, + "lockOrigin": false, + "moments": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "playback": 1, + "playbackSpeed": 30.0, + "playbackSpeedType": 0, + "showBackdrop": true, + "showBackdropImage": false, + "timeUnits": 1, + "tracks": [ + {"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[ + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"79e007f1-c3de-4e22-8196-e9c05e94265a","path":"sprites/s_node_gamma_map/s_node_gamma_map.yy",},},},"Disabled":false,"id":"f33aebb0-75bf-40b9-81ca-265f929d700e","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange": null, + "volume": 1.0, + "xorigin": 32, + "yorigin": 32, + }, + "swatchColours": null, + "swfPrecision": 2.525, + "textureGroupId": { + "name": "Default", + "path": "texturegroups/Default", + }, + "type": 0, + "VTile": false, + "width": 64, +} \ No newline at end of file diff --git a/sprites/s_node_quasicircle/4d73c7c4-efd9-495a-a283-47dff1321c00.png b/sprites/s_node_quasicircle/4d73c7c4-efd9-495a-a283-47dff1321c00.png new file mode 100644 index 000000000..33c162779 Binary files /dev/null and b/sprites/s_node_quasicircle/4d73c7c4-efd9-495a-a283-47dff1321c00.png differ diff --git a/sprites/s_node_quasicircle/layers/4d73c7c4-efd9-495a-a283-47dff1321c00/2ba14bfb-ed46-410c-905c-d2a14eb4807f.png b/sprites/s_node_quasicircle/layers/4d73c7c4-efd9-495a-a283-47dff1321c00/2ba14bfb-ed46-410c-905c-d2a14eb4807f.png new file mode 100644 index 000000000..33c162779 Binary files /dev/null and b/sprites/s_node_quasicircle/layers/4d73c7c4-efd9-495a-a283-47dff1321c00/2ba14bfb-ed46-410c-905c-d2a14eb4807f.png differ diff --git a/sprites/s_node_quasicircle/s_node_quasicircle.yy b/sprites/s_node_quasicircle/s_node_quasicircle.yy new file mode 100644 index 000000000..023821104 --- /dev/null +++ b/sprites/s_node_quasicircle/s_node_quasicircle.yy @@ -0,0 +1,74 @@ +{ + "resourceType": "GMSprite", + "resourceVersion": "1.0", + "name": "s_node_quasicircle", + "bbox_bottom": 63, + "bbox_left": 0, + "bbox_right": 63, + "bbox_top": 0, + "bboxMode": 0, + "collisionKind": 1, + "collisionTolerance": 0, + "DynamicTexturePage": false, + "edgeFiltering": false, + "For3D": false, + "frames": [ + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"4d73c7c4-efd9-495a-a283-47dff1321c00",}, + ], + "gridX": 0, + "gridY": 0, + "height": 64, + "HTile": false, + "layers": [ + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"2ba14bfb-ed46-410c-905c-d2a14eb4807f","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + ], + "nineSlice": null, + "origin": 4, + "parent": { + "name": "generator", + "path": "folders/nodes/icons/generator.yy", + }, + "preMultiplyAlpha": false, + "sequence": { + "resourceType": "GMSequence", + "resourceVersion": "1.4", + "name": "s_node_quasicircle", + "autoRecord": true, + "backdropHeight": 768, + "backdropImageOpacity": 0.5, + "backdropImagePath": "", + "backdropWidth": 1366, + "backdropXOffset": 0.0, + "backdropYOffset": 0.0, + "events": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "eventStubScript": null, + "eventToFunction": {}, + "length": 1.0, + "lockOrigin": false, + "moments": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "playback": 1, + "playbackSpeed": 30.0, + "playbackSpeedType": 0, + "showBackdrop": true, + "showBackdropImage": false, + "timeUnits": 1, + "tracks": [ + {"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[ + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"4d73c7c4-efd9-495a-a283-47dff1321c00","path":"sprites/s_node_quasicircle/s_node_quasicircle.yy",},},},"Disabled":false,"id":"2e827732-7cdc-4799-a968-d68f68f763dd","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange": null, + "volume": 1.0, + "xorigin": 32, + "yorigin": 32, + }, + "swatchColours": null, + "swfPrecision": 2.525, + "textureGroupId": { + "name": "Default", + "path": "texturegroups/Default", + }, + "type": 0, + "VTile": false, + "width": 64, +} \ No newline at end of file diff --git a/sprites/s_node_terminal_trigger/41901ad3-c621-404d-bcf1-e3e7a478e6a3.png b/sprites/s_node_terminal_trigger/41901ad3-c621-404d-bcf1-e3e7a478e6a3.png new file mode 100644 index 000000000..75b477893 Binary files /dev/null and b/sprites/s_node_terminal_trigger/41901ad3-c621-404d-bcf1-e3e7a478e6a3.png differ diff --git a/sprites/s_node_terminal_trigger/layers/41901ad3-c621-404d-bcf1-e3e7a478e6a3/c950825d-0cad-44e6-8fc4-ff269023eb3a.png b/sprites/s_node_terminal_trigger/layers/41901ad3-c621-404d-bcf1-e3e7a478e6a3/c950825d-0cad-44e6-8fc4-ff269023eb3a.png new file mode 100644 index 000000000..75b477893 Binary files /dev/null and b/sprites/s_node_terminal_trigger/layers/41901ad3-c621-404d-bcf1-e3e7a478e6a3/c950825d-0cad-44e6-8fc4-ff269023eb3a.png differ diff --git a/sprites/s_node_terminal_trigger/s_node_terminal_trigger.yy b/sprites/s_node_terminal_trigger/s_node_terminal_trigger.yy new file mode 100644 index 000000000..a98c4e543 --- /dev/null +++ b/sprites/s_node_terminal_trigger/s_node_terminal_trigger.yy @@ -0,0 +1,74 @@ +{ + "resourceType": "GMSprite", + "resourceVersion": "1.0", + "name": "s_node_terminal_trigger", + "bbox_bottom": 60, + "bbox_left": 2, + "bbox_right": 58, + "bbox_top": 3, + "bboxMode": 0, + "collisionKind": 1, + "collisionTolerance": 0, + "DynamicTexturePage": false, + "edgeFiltering": false, + "For3D": false, + "frames": [ + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"41901ad3-c621-404d-bcf1-e3e7a478e6a3",}, + ], + "gridX": 0, + "gridY": 0, + "height": 64, + "HTile": false, + "layers": [ + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"c950825d-0cad-44e6-8fc4-ff269023eb3a","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + ], + "nineSlice": null, + "origin": 4, + "parent": { + "name": "misc", + "path": "folders/nodes/icons/misc.yy", + }, + "preMultiplyAlpha": false, + "sequence": { + "resourceType": "GMSequence", + "resourceVersion": "1.4", + "name": "s_node_terminal_trigger", + "autoRecord": true, + "backdropHeight": 768, + "backdropImageOpacity": 0.5, + "backdropImagePath": "", + "backdropWidth": 1366, + "backdropXOffset": 0.0, + "backdropYOffset": 0.0, + "events": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "eventStubScript": null, + "eventToFunction": {}, + "length": 1.0, + "lockOrigin": false, + "moments": {"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[],}, + "playback": 1, + "playbackSpeed": 30.0, + "playbackSpeedType": 0, + "showBackdrop": true, + "showBackdropImage": false, + "timeUnits": 1, + "tracks": [ + {"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore","resourceVersion":"1.0","Keyframes":[ + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"41901ad3-c621-404d-bcf1-e3e7a478e6a3","path":"sprites/s_node_terminal_trigger/s_node_terminal_trigger.yy",},},},"Disabled":false,"id":"ddee68bf-6946-4d42-83aa-eea2b7cc2abe","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, + ], + "visibleRange": null, + "volume": 1.0, + "xorigin": 32, + "yorigin": 32, + }, + "swatchColours": null, + "swfPrecision": 2.525, + "textureGroupId": { + "name": "Default", + "path": "texturegroups/Default", + }, + "type": 0, + "VTile": false, + "width": 64, +} \ No newline at end of file