From 599e8b185535939b7edca7222017a225a1b4dfab Mon Sep 17 00:00:00 2001 From: Tanasart Date: Mon, 25 Dec 2023 18:51:12 +0700 Subject: [PATCH] 1.16.1 release --- PixelComposer.resource_order | 5 ++ PixelComposer.yyp | 5 ++ fonts/_f_sdf/_f_sdf.old.png | Bin 82361 -> 82361 bytes fonts/_f_sdf/_f_sdf.png | Bin 82361 -> 82361 bytes fonts/_f_sdf_medium/_f_sdf_medium.old.png | Bin 59906 -> 59906 bytes fonts/_f_sdf_medium/_f_sdf_medium.png | Bin 59906 -> 59906 bytes objects/o_main/Create_0.gml | 2 +- objects/o_main/Draw_64.gml | 4 + objects/o_main/Step_0.gml | 1 + objects/o_main/Step_1.gml | 11 +-- objects/o_video_banner/Draw_75.gml | 2 +- scripts/node_3d_repeat/node_3d_repeat.gml | 3 +- .../node_application_in.gml | 8 +- .../node_application_out.gml | 6 ++ .../node_displacement/node_displacement.gml | 2 +- .../node_monitor_capture.gml | 50 ++++++++++++ .../node_monitor_capture.yy | 11 +++ scripts/node_registry/node_registry.gml | 11 +-- scripts/panel_graph/panel_graph.gml | 5 ++ scripts/render_data/render_data.gml | 5 +- shaders/sh_cell_noise/sh_cell_noise.fsh | 6 +- .../sh_cell_noise_crystal.fsh | 2 +- .../sh_cell_noise_edge/sh_cell_noise_edge.fsh | 6 +- .../sh_cell_noise_random.fsh | 3 +- .../26cf4144-bf77-4164-a493-a58fa2413f40.png | Bin 0 -> 1487 bytes .../200cf35e-aaa9-4874-972f-78c611ece319.png | Bin 0 -> 1487 bytes sprites/s_node_gui_in/s_node_gui_in.yy | 74 ++++++++++++++++++ .../1c915d83-a842-4458-bba9-a742fc7769d5.png | Bin 0 -> 1471 bytes .../a600abd4-a265-4311-9609-0cee667d6af6.png | Bin 0 -> 1471 bytes sprites/s_node_gui_out/s_node_gui_out.yy | 74 ++++++++++++++++++ .../cc61ebc4-7e95-4e47-bfec-8c852dda92ad.png | Bin 0 -> 1474 bytes .../b4041c54-7cbe-44a9-88d9-93bdfff2e5ad.png | Bin 0 -> 1474 bytes .../s_node_monitor_capture.yy | 74 ++++++++++++++++++ 33 files changed, 342 insertions(+), 28 deletions(-) create mode 100644 scripts/node_monitor_capture/node_monitor_capture.gml create mode 100644 scripts/node_monitor_capture/node_monitor_capture.yy create mode 100644 sprites/s_node_gui_in/26cf4144-bf77-4164-a493-a58fa2413f40.png create mode 100644 sprites/s_node_gui_in/layers/26cf4144-bf77-4164-a493-a58fa2413f40/200cf35e-aaa9-4874-972f-78c611ece319.png create mode 100644 sprites/s_node_gui_in/s_node_gui_in.yy create mode 100644 sprites/s_node_gui_out/1c915d83-a842-4458-bba9-a742fc7769d5.png create mode 100644 sprites/s_node_gui_out/layers/1c915d83-a842-4458-bba9-a742fc7769d5/a600abd4-a265-4311-9609-0cee667d6af6.png create mode 100644 sprites/s_node_gui_out/s_node_gui_out.yy create mode 100644 sprites/s_node_monitor_capture/cc61ebc4-7e95-4e47-bfec-8c852dda92ad.png create mode 100644 sprites/s_node_monitor_capture/layers/cc61ebc4-7e95-4e47-bfec-8c852dda92ad/b4041c54-7cbe-44a9-88d9-93bdfff2e5ad.png create mode 100644 sprites/s_node_monitor_capture/s_node_monitor_capture.yy diff --git a/PixelComposer.resource_order b/PixelComposer.resource_order index 7be34477d..21ffda41f 100644 --- a/PixelComposer.resource_order +++ b/PixelComposer.resource_order @@ -441,6 +441,7 @@ {"name":"draw_surface_blend","order":1,"path":"scripts/draw_surface_blend/draw_surface_blend.yy",}, {"name":"o_dialog_group_input_order","order":3,"path":"objects/o_dialog_group_input_order/o_dialog_group_input_order.yy",}, {"name":"node_string_get_char","order":5,"path":"scripts/node_string_get_char/node_string_get_char.yy",}, + {"name":"s_node_gui_out","order":36,"path":"sprites/s_node_gui_out/s_node_gui_out.yy",}, {"name":"_p_dialog_undo_block","order":1,"path":"objects/_p_dialog_undo_block/_p_dialog_undo_block.yy",}, {"name":"sh_mk_tile18_edge_l","order":1,"path":"shaders/sh_mk_tile18_edge_l/sh_mk_tile18_edge_l.yy",}, {"name":"sh_palette_shift","order":19,"path":"shaders/sh_palette_shift/sh_palette_shift.yy",}, @@ -572,6 +573,7 @@ {"name":"s_node_pb_fx_strip","order":26,"path":"sprites/s_node_pb_fx_strip/s_node_pb_fx_strip.yy",}, {"name":"s_node_rigidSim_global","order":4,"path":"sprites/s_node_rigidSim_global/s_node_rigidSim_global.yy",}, {"name":"sh_channel_G_grey","order":8,"path":"shaders/sh_channel_G_grey/sh_channel_G_grey.yy",}, + {"name":"display_screenshot","order":4,"path":"extensions/display_screenshot/display_screenshot.yy",}, {"name":"node_strand_sim_inline","order":12,"path":"scripts/node_strand_sim_inline/node_strand_sim_inline.yy",}, {"name":"s_node_smokeSim_update","order":10,"path":"sprites/s_node_smokeSim_update/s_node_smokeSim_update.yy",}, {"name":"node_3d_depth","order":15,"path":"scripts/node_3d_depth/node_3d_depth.yy",}, @@ -908,6 +910,7 @@ {"name":"node_blur_simple","order":4,"path":"scripts/node_blur_simple/node_blur_simple.yy",}, {"name":"node_feedback_input","order":1,"path":"scripts/node_feedback_input/node_feedback_input.yy",}, {"name":"s_node_vfx_trail","order":13,"path":"sprites/s_node_vfx_trail/s_node_vfx_trail.yy",}, + {"name":"s_node_gui_in","order":37,"path":"sprites/s_node_gui_in/s_node_gui_in.yy",}, {"name":"s_node_base_conversion","order":10,"path":"sprites/s_node_base_conversion/s_node_base_conversion.yy",}, {"name":"node_transform_array","order":15,"path":"scripts/node_transform_array/node_transform_array.yy",}, {"name":"sh_mk_saber_glow","order":2,"path":"shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy",}, @@ -1426,6 +1429,7 @@ {"name":"s_node_fluidSim_add_fluid","order":3,"path":"sprites/s_node_fluidSim_add_fluid/s_node_fluidSim_add_fluid.yy",}, {"name":"sh_replace_color","order":5,"path":"shaders/sh_replace_color/sh_replace_color.yy",}, {"name":"s_node_armature_bind","order":14,"path":"sprites/s_node_armature_bind/s_node_armature_bind.yy",}, + {"name":"node_monitor_capture","order":21,"path":"scripts/node_monitor_capture/node_monitor_capture.yy",}, {"name":"node_blur_contrast","order":1,"path":"scripts/node_blur_contrast/node_blur_contrast.yy",}, {"name":"sh_trail_filler","order":50,"path":"shaders/sh_trail_filler/sh_trail_filler.yy",}, {"name":"s_node_border","order":12,"path":"sprites/s_node_border/s_node_border.yy",}, @@ -1670,6 +1674,7 @@ {"name":"s_biterator_bg","order":2,"path":"sprites/s_biterator_bg/s_biterator_bg.yy",}, {"name":"macMinimize","order":2,"path":"extensions/macMinimize/macMinimize.yy",}, {"name":"s_node_ase_layer","order":14,"path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",}, + {"name":"s_node_monitor_capture","order":38,"path":"sprites/s_node_monitor_capture/s_node_monitor_capture.yy",}, {"name":"directory_functions","order":9,"path":"scripts/directory_functions/directory_functions.yy",}, {"name":"_f_p1","order":1,"path":"fonts/_f_p1/_f_p1.yy",}, {"name":"tuple_functions","order":5,"path":"scripts/tuple_functions/tuple_functions.yy",}, diff --git a/PixelComposer.yyp b/PixelComposer.yyp index 7adb62998..cf7b7387e 100644 --- a/PixelComposer.yyp +++ b/PixelComposer.yyp @@ -657,6 +657,7 @@ {"id":{"name":"draw_surface_blend","path":"scripts/draw_surface_blend/draw_surface_blend.yy",},}, {"id":{"name":"o_dialog_group_input_order","path":"objects/o_dialog_group_input_order/o_dialog_group_input_order.yy",},}, {"id":{"name":"node_string_get_char","path":"scripts/node_string_get_char/node_string_get_char.yy",},}, + {"id":{"name":"s_node_gui_out","path":"sprites/s_node_gui_out/s_node_gui_out.yy",},}, {"id":{"name":"_p_dialog_undo_block","path":"objects/_p_dialog_undo_block/_p_dialog_undo_block.yy",},}, {"id":{"name":"sh_mk_tile18_edge_l","path":"shaders/sh_mk_tile18_edge_l/sh_mk_tile18_edge_l.yy",},}, {"id":{"name":"sh_palette_shift","path":"shaders/sh_palette_shift/sh_palette_shift.yy",},}, @@ -803,6 +804,7 @@ {"id":{"name":"s_node_pb_fx_strip","path":"sprites/s_node_pb_fx_strip/s_node_pb_fx_strip.yy",},}, {"id":{"name":"s_node_rigidSim_global","path":"sprites/s_node_rigidSim_global/s_node_rigidSim_global.yy",},}, {"id":{"name":"sh_channel_G_grey","path":"shaders/sh_channel_G_grey/sh_channel_G_grey.yy",},}, + {"id":{"name":"display_screenshot","path":"extensions/display_screenshot/display_screenshot.yy",},}, {"id":{"name":"node_strand_sim_inline","path":"scripts/node_strand_sim_inline/node_strand_sim_inline.yy",},}, {"id":{"name":"s_node_smokeSim_update","path":"sprites/s_node_smokeSim_update/s_node_smokeSim_update.yy",},}, {"id":{"name":"node_3d_depth","path":"scripts/node_3d_depth/node_3d_depth.yy",},}, @@ -1194,6 +1196,7 @@ {"id":{"name":"s_node_vfx_trail","path":"sprites/s_node_vfx_trail/s_node_vfx_trail.yy",},}, {"id":{"name":"o_dialog_add_multiple_images","path":"objects/o_dialog_add_multiple_images/o_dialog_add_multiple_images.yy",},}, {"id":{"name":"assets_data","path":"scripts/assets_data/assets_data.yy",},}, + {"id":{"name":"s_node_gui_in","path":"sprites/s_node_gui_in/s_node_gui_in.yy",},}, {"id":{"name":"s_node_base_conversion","path":"sprites/s_node_base_conversion/s_node_base_conversion.yy",},}, {"id":{"name":"node_transform_array","path":"scripts/node_transform_array/node_transform_array.yy",},}, {"id":{"name":"sh_mk_saber_glow","path":"shaders/sh_mk_saber_glow/sh_mk_saber_glow.yy",},}, @@ -1780,6 +1783,7 @@ {"id":{"name":"s_node_fluidSim_add_fluid","path":"sprites/s_node_fluidSim_add_fluid/s_node_fluidSim_add_fluid.yy",},}, {"id":{"name":"sh_replace_color","path":"shaders/sh_replace_color/sh_replace_color.yy",},}, {"id":{"name":"s_node_armature_bind","path":"sprites/s_node_armature_bind/s_node_armature_bind.yy",},}, + {"id":{"name":"node_monitor_capture","path":"scripts/node_monitor_capture/node_monitor_capture.yy",},}, {"id":{"name":"node_blur_contrast","path":"scripts/node_blur_contrast/node_blur_contrast.yy",},}, {"id":{"name":"sh_trail_filler","path":"shaders/sh_trail_filler/sh_trail_filler.yy",},}, {"id":{"name":"s_fx_pixel","path":"sprites/s_fx_pixel/s_fx_pixel.yy",},}, @@ -2064,6 +2068,7 @@ {"id":{"name":"addonPanel","path":"scripts/addonPanel/addonPanel.yy",},}, {"id":{"name":"macMinimize","path":"extensions/macMinimize/macMinimize.yy",},}, {"id":{"name":"s_node_ase_layer","path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",},}, + {"id":{"name":"s_node_monitor_capture","path":"sprites/s_node_monitor_capture/s_node_monitor_capture.yy",},}, {"id":{"name":"directory_functions","path":"scripts/directory_functions/directory_functions.yy",},}, {"id":{"name":"_f_p1","path":"fonts/_f_p1/_f_p1.yy",},}, {"id":{"name":"tuple_functions","path":"scripts/tuple_functions/tuple_functions.yy",},}, diff --git a/fonts/_f_sdf/_f_sdf.old.png b/fonts/_f_sdf/_f_sdf.old.png index 8805077c13d3ed65a7a54b436dd6ba8fa3e57ecb..b780a81f4ddbb6f036ae28b46f394a275beb5d21 100644 GIT binary patch delta 96 zcmdnl%(}CgwP6dRiKB>Vh=GBXiJ_ILsWy;dU~qn7)9UFSj*PMxGW*V0iBGR|WK>W< V*YonG^a%za@O1TaS?83{1OPSX8y5fo delta 96 zcmdnl%(}CgwP6dRiKB=~h=HM%fr*ugnYMv}m4Siy-HfW~9*&H%7&2)M7miJ@bYxUe WK-Xh9^`j&M5O})!xvXVh=HM%frXW+rM7{Am4U&`>`bBQ9*&H%7&0%+F0Pwi>By*{ WfUal1@`pkOAn>yCa3AJ!SqT;Mg;|Q UJ=W77y=MRdPgg&ebxsLQ01q4*jsO4v diff --git a/fonts/_f_sdf_medium/_f_sdf_medium.old.png b/fonts/_f_sdf_medium/_f_sdf_medium.old.png index c2a2377fe27240d55ce6e2a8691d737ba0b802e4..e566e14b6f81603172c13ceae3fd90ce7ffeb12c 100644 GIT binary patch delta 119 zcmZp=!rXL)c|+|>5z`O@11l3lD^pW#Aj81m{KTf!lPA8E4MCUKcg9Mbfq_Az#5JNM uC9x#csw6WvwYVfPw}8ROz{ptF&`8$^UC+y#(kFm=7(8A5T-G@yGywqpN+etW delta 119 zcmZp=!rXL)c|+|>5t9%DLn{LlD-&~V0|P4qgN>__&rP2AQZ@u#;=uRYMGOoK8YQj~ vB`Jv|sa7SKxv9k^iMa&~Mg~U4x`sx&M(BE`Kl-&6sE5JR)z4*}Q$iB}Pd6q1 diff --git a/fonts/_f_sdf_medium/_f_sdf_medium.png b/fonts/_f_sdf_medium/_f_sdf_medium.png index 10a6f3d36deae3d2d8dfdd76a9b1dd4711da04f6..5812e537b0d0c953f3b9b4f644e2ed587135bfc8 100644 GIT binary patch delta 119 zcmZp=!rXL)c|+|>5z`O@Ln{LdD^p8t0|P4qgPGZxLX#)Hlnp_bcwu&N9RmY{Mu}@g vNlIc#s#Qs5ZfbE!Vr~J0k%5u1uAz~x5xSoJ${z}WdKf%i{an^LB{Ts5&cq|e delta 119 zcmZp=!rXL)c|+|>5t9%Db1M@AD+5z)10ZRzdqsi8zRg#&TT3nKtTfkssU}UUoXrya|u4nFpm(f5y44$rjF6*2UngAbYB_;p> diff --git a/objects/o_main/Create_0.gml b/objects/o_main/Create_0.gml index 8484a4bfe..09c60be14 100644 --- a/objects/o_main/Create_0.gml +++ b/objects/o_main/Create_0.gml @@ -309,5 +309,5 @@ global.__debug_runner = 0; __debug_animator_counter = 0; - instance_create(0, 0, o_video_banner); + //instance_create(0, 0, o_video_banner); #endregion \ No newline at end of file diff --git a/objects/o_main/Draw_64.gml b/objects/o_main/Draw_64.gml index 575007f77..8ae902f3d 100644 --- a/objects/o_main/Draw_64.gml +++ b/objects/o_main/Draw_64.gml @@ -64,4 +64,8 @@ if(APP_SURF_OVERRIDE) { surface_set_target(PRE_APP_SURF); draw_surface(APP_SURF, 0, 0); surface_reset_target(); + + surface_set_target(POST_APP_SURF); + draw_surface(APP_SURF, 0, 0); + surface_reset_target(); } \ No newline at end of file diff --git a/objects/o_main/Step_0.gml b/objects/o_main/Step_0.gml index 6271d12ae..f42c2d45a 100644 --- a/objects/o_main/Step_0.gml +++ b/objects/o_main/Step_0.gml @@ -6,6 +6,7 @@ winManStep() if(PROJECT.active && !PROJECT.safeMode) { #region PROJECT.animator.step(); PROJECT.globalNode.step(); + LIVE_UPDATE = false; try { if(PANEL_MAIN != 0) PANEL_MAIN.step(); diff --git a/objects/o_main/Step_1.gml b/objects/o_main/Step_1.gml index 11d0ce064..b61df087f 100644 --- a/objects/o_main/Step_1.gml +++ b/objects/o_main/Step_1.gml @@ -74,13 +74,14 @@ _HOVERING_ELEMENT = noone; #region animation & render DEF_SURFACE_RESET(); - if(APP_SURF_OVERRIDE) + if(!PROJECT.safeMode&& UPDATE_RENDER_ORDER) { + ResetAllNodesRender(); + NodeTopoSort(); + } + + if(LIVE_UPDATE) Render(); else if(!PROJECT.safeMode) { - if(UPDATE_RENDER_ORDER) { - ResetAllNodesRender(); - NodeTopoSort(); - } UPDATE_RENDER_ORDER = false; if(PROJECT.active) { diff --git a/objects/o_video_banner/Draw_75.gml b/objects/o_video_banner/Draw_75.gml index e6ad0d426..1bfbd016d 100644 --- a/objects/o_video_banner/Draw_75.gml +++ b/objects/o_video_banner/Draw_75.gml @@ -8,7 +8,7 @@ surface = surface_verify(surface, w, h); surface_set_target(surface); DRAW_CLEAR - draw_sprite_stretched_ext(s_dialog_bg_l, 0, 0, 0, w, h, c_white, .99); + draw_sprite_stretched(s_dialog_bg_l, 0, 0, 0, w, h); draw_sprite(s_icon_64, 0, h / 2, h / 2); draw_set_text(f_h2, fa_left, fa_bottom, c_white); diff --git a/scripts/node_3d_repeat/node_3d_repeat.gml b/scripts/node_3d_repeat/node_3d_repeat.gml index 8d99803e8..594d3cacf 100644 --- a/scripts/node_3d_repeat/node_3d_repeat.gml +++ b/scripts/node_3d_repeat/node_3d_repeat.gml @@ -1,5 +1,6 @@ function Node_3D_Repeat(_x, _y, _group = noone) : Node_3D(_x, _y, _group) constructor { - name = "3D Repeat"; + name = "3D Repeat"; + min_h = 128; inputs[| 0] = nodeValue("Objects", self, JUNCTION_CONNECT.input, VALUE_TYPE.d3Mesh, noone ) .setArrayDepth(1) diff --git a/scripts/node_application_in/node_application_in.gml b/scripts/node_application_in/node_application_in.gml index e25ebddbd..4dcd75894 100644 --- a/scripts/node_application_in/node_application_in.gml +++ b/scripts/node_application_in/node_application_in.gml @@ -4,13 +4,17 @@ function Node_Application_In(_x, _y, _group = noone) : Node(_x, _y, _group) cons inputs[| 0] = nodeValue("GUI", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, noone); + APP_SURF_OVERRIDE = true; + static step = function() { #region + LIVE_UPDATE = true; + } #endregion + + static update = function() { #region var s = inputs[| 0].getValue(); - APP_SURF_OVERRIDE = false; if(!is_surface(s)) return; - APP_SURF_OVERRIDE = true; surface_set_target(POST_APP_SURF); BLEND_OVERRIDE draw_surface_stretched(s, 0, 0, WIN_W, WIN_H); diff --git a/scripts/node_application_out/node_application_out.gml b/scripts/node_application_out/node_application_out.gml index e76417105..21a2f51e1 100644 --- a/scripts/node_application_out/node_application_out.gml +++ b/scripts/node_application_out/node_application_out.gml @@ -10,7 +10,13 @@ function Node_Application_Out(_x, _y, _group = noone) : Node(_x, _y, _group) con outputs[| 0] = nodeValue("GUI", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); + APP_SURF_OVERRIDE = true; + static step = function() { #region + LIVE_UPDATE = true; + } #endregion + + static update = function() { #region outputs[| 0].setValue(PRE_APP_SURF); } #endregion } \ No newline at end of file diff --git a/scripts/node_displacement/node_displacement.gml b/scripts/node_displacement/node_displacement.gml index dc6a05f2c..8cce4686c 100644 --- a/scripts/node_displacement/node_displacement.gml +++ b/scripts/node_displacement/node_displacement.gml @@ -82,7 +82,7 @@ If set, then strength value control how many times the effect applies on itself. shader_set_f("dimension", [ww, hh]); shader_set_f("map_dimension", [mw, mh]); shader_set_f("displace", _data[ 2]); - shader_set_f_map("strength", _data[ 3], _data[15], inputs[| 3].attributes.mapped); + shader_set_f_map("strength", _data[ 3], _data[15], inputs[| 3]); shader_set_f("middle", _data[ 4]); shader_set_i("use_rg", _data[ 5]); shader_set_i("iterate", _data[ 6]); diff --git a/scripts/node_monitor_capture/node_monitor_capture.gml b/scripts/node_monitor_capture/node_monitor_capture.gml new file mode 100644 index 000000000..1a217244f --- /dev/null +++ b/scripts/node_monitor_capture/node_monitor_capture.gml @@ -0,0 +1,50 @@ +function Node_Monitor_Capture(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { + name = "Monitor Capture"; + update_on_frame = true; + + monitors = display_measure_all(); + + inputs[| 0] = nodeValue("Mode", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0) + .setDisplay(VALUE_DISPLAY.enum_scroll, [ "Monitor", "Region" ]); + + inputs[| 1] = nodeValue("Monitor", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0) + .setDisplay(VALUE_DISPLAY.enum_scroll, array_create_ext(array_length(monitors), function(ind) { return monitors[ind][9]; })); + + inputs[| 2] = nodeValue("Region", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, [ 0, 0, display_get_width(), display_get_height() ]) + .setDisplay(VALUE_DISPLAY.vector); + + outputs[| 0] = nodeValue("GUI", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); + + input_display_list = [ + 0, 1, 2, + ]; + + surface = -1; + + static step = function() { #region + LIVE_UPDATE = true; + + var _mode = getInputData(0); + + inputs[| 1].setVisible(_mode == 0); + inputs[| 2].setVisible(_mode == 1); + } #endregion + + static update = function() { #region + var _mode = getInputData(0); + var _moni = getInputData(1); + var _regi = getInputData(2); + + switch(_mode) { + case 0 : + var _mon = monitors[_moni]; + surface = display_capture_surface_part(_mon[0], _mon[1], _mon[2], _mon[3], surface); + break; + case 1 : + surface = display_capture_surface_part(_regi[0], _regi[1], _regi[2], _regi[3], surface); + break; + } + + outputs[| 0].setValue(surface); + } #endregion +} \ No newline at end of file diff --git a/scripts/node_monitor_capture/node_monitor_capture.yy b/scripts/node_monitor_capture/node_monitor_capture.yy new file mode 100644 index 000000000..e730f9edf --- /dev/null +++ b/scripts/node_monitor_capture/node_monitor_capture.yy @@ -0,0 +1,11 @@ +{ + "resourceType": "GMScript", + "resourceVersion": "1.0", + "name": "node_monitor_capture", + "isCompatibility": false, + "isDnD": false, + "parent": { + "name": "misc", + "path": "folders/nodes/data/misc.yy", + }, +} \ No newline at end of file diff --git a/scripts/node_registry/node_registry.gml b/scripts/node_registry/node_registry.gml index b6a684dc7..6f9020eaf 100644 --- a/scripts/node_registry/node_registry.gml +++ b/scripts/node_registry/node_registry.gml @@ -871,16 +871,17 @@ function __initNodes() { ds_list_add(node, "Cache"); addNodeObject(node, "Cache", s_node_cache, "Node_Cache", [1, Node_Cache],, "Store current animation. Cache persisted between save.").setVersion(1134); addNodeObject(node, "Cache Array", s_node_cache_array, "Node_Cache_Array", [1, Node_Cache_Array],, "Store current animation as array. Cache persisted between save.").setVersion(1130); - + ds_list_add(node, "Debug"); addNodeObject(node, "Print", s_node_print, "Node_Print", [1, Node_Print], ["debug log"], "Display text to notification.").setVersion(1145); addNodeObject(node, "Widget Test", s_node_print, "Node_Widget_Test", [1, Node_Widget_Test]); //addNodeObject(node, "Module Test", s_node_print, "Node_Module_Test", [1, Node_Module_Test]); - + ds_list_add(node, "System"); - addNodeObject(node, "Execute Shell", s_node_shell_excecute, "Node_Shell", [1, Node_Shell], ["terminal", "execute", "run"], "Execute shell script.").setVersion(11530); - //addNodeObject(node, "GUI In", s_node_shell_excecute, "Node_Application_In", [1, Node_Application_In]); - //addNodeObject(node, "GUI Out", s_node_shell_excecute, "Node_Application_Out", [1, Node_Application_Out]); + 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]); + addNodeObject(node, "GUI Out", s_node_gui_out, "Node_Application_Out", [1, Node_Application_Out]); #endregion var actions = ds_list_create(); diff --git a/scripts/panel_graph/panel_graph.gml b/scripts/panel_graph/panel_graph.gml index 7594c5e8b..876b41b08 100644 --- a/scripts/panel_graph/panel_graph.gml +++ b/scripts/panel_graph/panel_graph.gml @@ -1686,6 +1686,11 @@ function Panel_Graph(project = PROJECT) : PanelContent() constructor { graph_dragging_key = false; graph_zooming_key = false; + + if(LIVE_UPDATE) { + draw_set_text(f_p0b, fa_right, fa_bottom, COLORS._main_value_negative); + draw_text(w - 8, h - toolbar_height, "Live Update"); + } } #endregion #region ++++ node manipulation ++++ diff --git a/scripts/render_data/render_data.gml b/scripts/render_data/render_data.gml index ac9f6345e..7508de23b 100644 --- a/scripts/render_data/render_data.gml +++ b/scripts/render_data/render_data.gml @@ -5,7 +5,9 @@ enum RENDER_TYPE { } #region globalvar - globalvar UPDATE, RENDER_QUEUE, RENDER_ORDER, UPDATE_RENDER_ORDER; + globalvar UPDATE, RENDER_QUEUE, RENDER_ORDER, UPDATE_RENDER_ORDER, LIVE_UPDATE; + + LIVE_UPDATE = false; UPDATE_RENDER_ORDER = false; global.FLAG.render = 0; global.FLAG.renderTime = false; @@ -177,6 +179,7 @@ function Render(partial = false, runAction = false) { #region var reset_all = !partial; if(reset_all) { + LOG_IF(global.FLAG.render == 1, $"xxxxxxxxxx Resetting {ds_list_size(PROJECT.nodeTopo)} nodes xxxxxxxxxx"); var _key = ds_map_find_first(PROJECT.nodeMap); var amo = ds_map_size(PROJECT.nodeMap); diff --git a/shaders/sh_cell_noise/sh_cell_noise.fsh b/shaders/sh_cell_noise/sh_cell_noise.fsh index 7facf5cc0..9bff0fbc6 100644 --- a/shaders/sh_cell_noise/sh_cell_noise.fsh +++ b/shaders/sh_cell_noise/sh_cell_noise.fsh @@ -37,11 +37,9 @@ void main() { #endregion vec2 pos = position / dimension; - vec2 st = v_vTexcoord - pos; + vec2 st = v_vTexcoord * sca - pos; vec3 color = vec3(.0); - - st *= sca; - + float m_dist = 1.; if(pattern == 0) { diff --git a/shaders/sh_cell_noise_crystal/sh_cell_noise_crystal.fsh b/shaders/sh_cell_noise_crystal/sh_cell_noise_crystal.fsh index b57e39e2b..2f5acf6ab 100644 --- a/shaders/sh_cell_noise_crystal/sh_cell_noise_crystal.fsh +++ b/shaders/sh_cell_noise_crystal/sh_cell_noise_crystal.fsh @@ -74,7 +74,7 @@ void main() { } #endregion - vec2 p = (v_vTexcoord - position / dimension) * sca * 2.0 - 1.0; + vec2 p = (v_vTexcoord * sca - position / dimension) * 2.0 - 1.0; float n = cellular(p).y; gl_FragColor = vec4(vec3(n), 1.); diff --git a/shaders/sh_cell_noise_edge/sh_cell_noise_edge.fsh b/shaders/sh_cell_noise_edge/sh_cell_noise_edge.fsh index 6930584e2..c9cdda32f 100644 --- a/shaders/sh_cell_noise_edge/sh_cell_noise_edge.fsh +++ b/shaders/sh_cell_noise_edge/sh_cell_noise_edge.fsh @@ -34,10 +34,8 @@ void main() { #endregion vec2 pos = position / dimension; - vec2 st = v_vTexcoord - pos; - - st *= sca; - + vec2 st = v_vTexcoord * sca - pos; + float md = 8.; vec2 mg, mr; diff --git a/shaders/sh_cell_noise_random/sh_cell_noise_random.fsh b/shaders/sh_cell_noise_random/sh_cell_noise_random.fsh index c6bce2bff..e1e35092e 100644 --- a/shaders/sh_cell_noise_random/sh_cell_noise_random.fsh +++ b/shaders/sh_cell_noise_random/sh_cell_noise_random.fsh @@ -43,9 +43,8 @@ void main() { #endregion vec2 pos = position / dimension; - vec2 st = v_vTexcoord - pos; + vec2 st = v_vTexcoord * sca - pos; vec3 color = vec3(.0); - st *= sca; vec2 i_st = floor(st); vec2 f_st = fract(st); diff --git a/sprites/s_node_gui_in/26cf4144-bf77-4164-a493-a58fa2413f40.png b/sprites/s_node_gui_in/26cf4144-bf77-4164-a493-a58fa2413f40.png new file mode 100644 index 0000000000000000000000000000000000000000..5ad49c8bb8d52b4cae3928ddbb07f1e395e064b9 GIT binary patch literal 1487 zcmZ{kdpHw%7{`BX*2ry6gq*fqb6K{@j!beZBrH@!#cUmxF zxt%3tvgB6ok6c@Xs6@$aY-j#C=Q+=LdfxZ_e&6T)J)h_Iy#Kt3L>GHG8Fd)|fSjX) zotxOLHVO_C>x011QL&-?9o(D&h|mRq6$`+sc*Ob$z&Q*6GrjqDYSy37Q&=-z&)*j)5U%Z_{)Q@cu4&TU(M?wsmPaBx16r*1pNiZm`ecad@ zjIVweoRg7ZG_=3>oPntbm3otcF6%z=B{-+{0Xg1Tn@BeB*+a9I&EV=^i)+BcAgNDP zV@`+5LKfSlvR&1uM=#FOJ60ww-|T6Z&CShyZ!nJTmPu)1fq%6e=5GY?gjyl0OeFa` zK+Q=^{uuV7RJjD#x^phV0?a*AfnpRrk$SYyUo0f)t~ALSiT2bQ4_J@cDS4_Q7dRwr z3-f_(5;$sRUc2h;o6F!2nzo!j#+IT6MPKE(nWItj{ql%$3I1}5?R`&f`k4d6pG#Cc z_Q9Nrq)1JMUDiqd<%Sw$v(H61{)!f{cc*UPwnuoUp68DEEB$KnE0Kt!Y&H3~xGpkr zw~MP%3fVmzF<8=f3Q12`Pm3KI7w7c_CgKmxmcjz2$c2RGzcMo&JpU-~JM`>YDlZ(n zD7-q3YD}ELCe9y8Z&QZ;WwSHOaNXVtmwG)z)K+N6>_H1M+LWcen6{t;+0y!bg;Ww5 zrdi)Gx!fq!Vo@uDopqTdLAzT+7~{R3A_T^9h&{VxRP5%1MK1YovzkNIoTZzQx2n=lqyyvF&SQs%MT-R3p-XhgrC3|I zP{`J8`aWP=H|0xTPn+zR(u6X|b*lZ$D7ue|cYQF`CR(FbhZUVNOT}0!$@}YVDecn> zAXw(IAr!pRs?_9EL(`Z8kHmE3?(LmeJz3Bb{;km<++`+8mxTQs`+`$l1ut{0K_GGAtp9w+o=ypn6`|8PYzD&m{g$=QQ38cowYsB?@q4@y)l{E;2)^ljl* zY1uu`fLqJU6z07I*KL=lIB{N>0WA}jb(WV8e*4#AQPe^8 z*%`T33w*USr=nPiYeQEcz{VNpd+VcG4F?ESD4-~;7d&AjpS)kvpRxBcTBaYUo$fQ1 zz7Cz6(w5cdXp6!kYpU`C(C>~P4+Qr*P$&HAOPHw=iHpn zdmFAnxTCmu_bIP~X$mhU3D%B7%60Hj=O(a$1aA^wChaI|Hw>EcKP}#C^-$w-=53?N zOq}Vcg0D^t`!$ETB%il$vl2Ecx<;$KocK=TzDns@TQ?PbnZiib>x3txatf#jt_?i7 zrA~8HT>-Uv6cCq^QVlY#g=yI|xSzSVac49uuZgRGDglAA@D263ASv9`?G`^aC`C~h z-!~n`eoqG3k3li_52J_;;4nB7G!}=(nR;L_=B8%mIJ}{_!C+eSC_4WEXd&dl(-(dY na3V&s#lX&geqaRBC}$adH2Tk(uOVv(#0+rU?_yVK;~V`qsDz7- literal 0 HcmV?d00001 diff --git a/sprites/s_node_gui_in/layers/26cf4144-bf77-4164-a493-a58fa2413f40/200cf35e-aaa9-4874-972f-78c611ece319.png b/sprites/s_node_gui_in/layers/26cf4144-bf77-4164-a493-a58fa2413f40/200cf35e-aaa9-4874-972f-78c611ece319.png new file mode 100644 index 0000000000000000000000000000000000000000..5ad49c8bb8d52b4cae3928ddbb07f1e395e064b9 GIT binary patch literal 1487 zcmZ{kdpHw%7{`BX*2ry6gq*fqb6K{@j!beZBrH@!#cUmxF zxt%3tvgB6ok6c@Xs6@$aY-j#C=Q+=LdfxZ_e&6T)J)h_Iy#Kt3L>GHG8Fd)|fSjX) zotxOLHVO_C>x011QL&-?9o(D&h|mRq6$`+sc*Ob$z&Q*6GrjqDYSy37Q&=-z&)*j)5U%Z_{)Q@cu4&TU(M?wsmPaBx16r*1pNiZm`ecad@ zjIVweoRg7ZG_=3>oPntbm3otcF6%z=B{-+{0Xg1Tn@BeB*+a9I&EV=^i)+BcAgNDP zV@`+5LKfSlvR&1uM=#FOJ60ww-|T6Z&CShyZ!nJTmPu)1fq%6e=5GY?gjyl0OeFa` zK+Q=^{uuV7RJjD#x^phV0?a*AfnpRrk$SYyUo0f)t~ALSiT2bQ4_J@cDS4_Q7dRwr z3-f_(5;$sRUc2h;o6F!2nzo!j#+IT6MPKE(nWItj{ql%$3I1}5?R`&f`k4d6pG#Cc z_Q9Nrq)1JMUDiqd<%Sw$v(H61{)!f{cc*UPwnuoUp68DEEB$KnE0Kt!Y&H3~xGpkr zw~MP%3fVmzF<8=f3Q12`Pm3KI7w7c_CgKmxmcjz2$c2RGzcMo&JpU-~JM`>YDlZ(n zD7-q3YD}ELCe9y8Z&QZ;WwSHOaNXVtmwG)z)K+N6>_H1M+LWcen6{t;+0y!bg;Ww5 zrdi)Gx!fq!Vo@uDopqTdLAzT+7~{R3A_T^9h&{VxRP5%1MK1YovzkNIoTZzQx2n=lqyyvF&SQs%MT-R3p-XhgrC3|I zP{`J8`aWP=H|0xTPn+zR(u6X|b*lZ$D7ue|cYQF`CR(FbhZUVNOT}0!$@}YVDecn> zAXw(IAr!pRs?_9EL(`Z8kHmE3?(LmeJz3Bb{;km<++`+8mxTQs`+`$l1ut{0K_GGAtp9w+o=ypn6`|8PYzD&m{g$=QQ38cowYsB?@q4@y)l{E;2)^ljl* zY1uu`fLqJU6z07I*KL=lIB{N>0WA}jb(WV8e*4#AQPe^8 z*%`T33w*USr=nPiYeQEcz{VNpd+VcG4F?ESD4-~;7d&AjpS)kvpRxBcTBaYUo$fQ1 zz7Cz6(w5cdXp6!kYpU`C(C>~P4+Qr*P$&HAOPHw=iHpn zdmFAnxTCmu_bIP~X$mhU3D%B7%60Hj=O(a$1aA^wChaI|Hw>EcKP}#C^-$w-=53?N zOq}Vcg0D^t`!$ETB%il$vl2Ecx<;$KocK=TzDns@TQ?PbnZiib>x3txatf#jt_?i7 zrA~8HT>-Uv6cCq^QVlY#g=yI|xSzSVac49uuZgRGDglAA@D263ASv9`?G`^aC`C~h z-!~n`eoqG3k3li_52J_;;4nB7G!}=(nR;L_=B8%mIJ}{_!C+eSC_4WEXd&dl(-(dY na3V&s#lX&geqaRBC}$adH2Tk(uOVv(#0+rU?_yVK;~V`qsDz7- literal 0 HcmV?d00001 diff --git a/sprites/s_node_gui_in/s_node_gui_in.yy b/sprites/s_node_gui_in/s_node_gui_in.yy new file mode 100644 index 000000000..106200d77 --- /dev/null +++ b/sprites/s_node_gui_in/s_node_gui_in.yy @@ -0,0 +1,74 @@ +{ + "resourceType": "GMSprite", + "resourceVersion": "1.0", + "name": "s_node_gui_in", + "bbox_bottom": 57, + "bbox_left": 1, + "bbox_right": 61, + "bbox_top": 6, + "bboxMode": 0, + "collisionKind": 1, + "collisionTolerance": 0, + "DynamicTexturePage": false, + "edgeFiltering": false, + "For3D": false, + "frames": [ + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"26cf4144-bf77-4164-a493-a58fa2413f40",}, + ], + "gridX": 0, + "gridY": 0, + "height": 64, + "HTile": false, + "layers": [ + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"200cf35e-aaa9-4874-972f-78c611ece319","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_gui_in", + "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":"26cf4144-bf77-4164-a493-a58fa2413f40","path":"sprites/s_node_gui_in/s_node_gui_in.yy",},},},"Disabled":false,"id":"78f93c87-181f-4df1-8e70-63d356290113","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_gui_out/1c915d83-a842-4458-bba9-a742fc7769d5.png b/sprites/s_node_gui_out/1c915d83-a842-4458-bba9-a742fc7769d5.png new file mode 100644 index 0000000000000000000000000000000000000000..22f560600cb474a90f6bded112c58d08fd4c87c2 GIT binary patch literal 1471 zcmZ{kdpHwn9LL{LCUYwbN3)|`5~EpjPsXrZlY4Gq^x)7&Te%*~qooVd+-gK=$8{#; zHmsBrl1|TbS#m3K%l#;|sk8p+Jm)!2&-=XJ@9%kk&*%63{q-oLU^Pcz2YIX6pIeuY5P zO7dgYb#m_;{g$)+tF!(qQ?BLO?>7?HPJD>9G&38=&TBuDQ)DZHA8NqJ9)SkxBX2dq z1|<1C-{xi$IJ-iLYKz41d!Bs7fwg{OCsrokSir1*bI})>2mUFKQ~d;#rp= zFZD{sk~#+Y6sODES;3Gv3>bZkw2ob@*fxh9;)P&P15DUr2CL%yG=d6>>r1ocsYmJs+*Sl4QWxN-nWpKI#Z*f{ z-VXSU1!BvYiL{=Yen|@pc84*>B?TYm=@jz2KntbdZb+)-~n{Q6R8sJEd?dAkpTb(Rv-!won zHa<__KV%<}iyNgbB1k+TGN`%Q_g(XzOqyS zn=Mf@JA0HD7sUTeaCWX`*Is?v_u$zgMG>jqvq+A#DI#RU_QG(Su^bMEGf?n!y3N$Q z$H7ZIqfn(#IwxBZ`AZe*dgWHya_ow}FJ5nWXuuUFh9B)x)Y@Iv#MWiset*KE&*XL{?ot z!n^H9*);Pu-b-_+nFYn45~{miOfS`Z@t1o7gO=@_J)eHIdWna1=l2`QUpCzeXx6^I zj|Vv!w%+UM%QKliwpjTl^|%f9Nmw@oC4wIn)TPCHo}#;3aB`(t<`=GwJ7Aq+Qae$* zn*30g$3z?U9-)4bv( z)pit_oys|v8BO0%ON2&tOHVVEahlI1G}-oLU^Pcz2YIX6pIeuY5P zO7dgYb#m_;{g$)+tF!(qQ?BLO?>7?HPJD>9G&38=&TBuDQ)DZHA8NqJ9)SkxBX2dq z1|<1C-{xi$IJ-iLYKz41d!Bs7fwg{OCsrokSir1*bI})>2mUFKQ~d;#rp= zFZD{sk~#+Y6sODES;3Gv3>bZkw2ob@*fxh9;)P&P15DUr2CL%yG=d6>>r1ocsYmJs+*Sl4QWxN-nWpKI#Z*f{ z-VXSU1!BvYiL{=Yen|@pc84*>B?TYm=@jz2KntbdZb+)-~n{Q6R8sJEd?dAkpTb(Rv-!won zHa<__KV%<}iyNgbB1k+TGN`%Q_g(XzOqyS zn=Mf@JA0HD7sUTeaCWX`*Is?v_u$zgMG>jqvq+A#DI#RU_QG(Su^bMEGf?n!y3N$Q z$H7ZIqfn(#IwxBZ`AZe*dgWHya_ow}FJ5nWXuuUFh9B)x)Y@Iv#MWiset*KE&*XL{?ot z!n^H9*);Pu-b-_+nFYn45~{miOfS`Z@t1o7gO=@_J)eHIdWna1=l2`QUpCzeXx6^I zj|Vv!w%+UM%QKliwpjTl^|%f9Nmw@oC4wIn)TPCHo}#;3aB`(t<`=GwJ7Aq+Qae$* zn*30g$3z?U9-)4bv( z)pit_oys|v8BO0%ON2&tOHVVEahlI1G}","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":"1c915d83-a842-4458-bba9-a742fc7769d5","path":"sprites/s_node_gui_out/s_node_gui_out.yy",},},},"Disabled":false,"id":"5c2daabc-d68b-4ffb-86cf-e0fd654f36ed","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_monitor_capture/cc61ebc4-7e95-4e47-bfec-8c852dda92ad.png b/sprites/s_node_monitor_capture/cc61ebc4-7e95-4e47-bfec-8c852dda92ad.png new file mode 100644 index 0000000000000000000000000000000000000000..7ee9380615fa12ea6ad554c7466147977446272d GIT binary patch literal 1474 zcmZ{kc`y`w7{`BW-Eu6YTGuX9NVL0HTFJFJ@@Cm6(X<=Z`K~NBn~LQnXCh3jv%GDs zJ5q%7I&vf;XO0#fM(*6Q-fiBQX5K%VXP)Of^E~r;oJ>#u`uL ztLaY{73Rl6AKExy5boB*GXR7h27nm_z!pEnoCbi70$_#=04@W7{Q=o898T~H!fv)! zc(D7^^6MX^0w7prgEwi!4^v3?WFn6VQHIv3eHy z^%80h$~^(;k|U2J>dd6CYZ%;`~;_oMGV2PpL=UW`oow?R;{;A9wTjC}77~55l z+G93%x5JEchjTVvf)r!25|8&o9$Ow}&H%@$0m_jPR*je=r0HILfzd!xJeT^m7@|)) zCow&pw5mZ>ap_g{_Va{z$3`r}`p0{eii{}B`?wkpHUt@hee~9u)>XM}xpMtVso;n* zw>GFF+va3T#x<@)zLp_gHBfknRilQpX)K+0b`laG`+15u6C75J#-8|cgkq5kb|vx! znLUF_MFo*{#|Dnrll9d0kW&|j;YS)Xz%x%Qv&;fFB+RmD(CnA-J7*mK*Szy>Ye*D} z%IOg!KjyL3Wgc{RvpXs$a`O`EM6qSiYXDY>G{gt42+G7$t_6fVO^3N7BNAHacD}P#wxAMMOj7Mbijzt*jY&;*y{~q8x{NuGwRI`Oje^zyM%UcPbLX37ogylwp`YvL z(G5?-y$nx?km)6zt?T0i1>2Ye&d2vkMW4kGWR#22cB1@U&gAe?5WhkF3LocxhN^hJvbnV1m35^f{|OWR*RPxIiN=EUwyQW%>( zm5u_jRvYZ>@F_x+rzJC;h{lpgm&CP6I^#9U0%=-@&J9K;tk1X%XN|vUdH7^GkaDQp z+AgwL4Xq-u&&VWf*D}h`NGTu`hq#yJg*3=}QMc9p)qS)#F@$5$V~X&C%FBOIrz*!q zi%!x$dwHc^X_u2&9NLNqq zo1ncC)7L}bv6QJk2I44^4 zDUNmVK!b1W_PgWvlgt*)pRoE|FZ*b6I{K0^@+OZezR6}n1CEK`6#WhnyePk}a+2$> z*`G72&@x7h+m=>oehq)!Ud3aq3oP#(pIRFfo*1aS(2RX~y$j`9GAqrb5tzt_Sy9`< zo|3hRq)0fDo-E{T^Ygg6y_Yg5u&Xsg?UU7vi#r0d*6AHc%PFaX77qzVW3>oD$PRy$ z6gc7b9bwp(1iMo-yO#=E5x;by;BW3(%Bc1hKICZAnKnWsT{B0-CCq)o$t=+c`wER< zZm^$Q;Jrs!!!m@kx{|KC5{-*vQpg7F?k}A>;qP}*uuZH6{LhrS-m==Njm^+P-dX@U?kP2y;aRow)l2H;|1Dq_pvs50XFsJq z<-fE;!Ka*qJuU}RaPEN=z5omgqpOX^Xk+vpQ3g1S9uBRqg+k#_C_}vjss91gD;_?c q*M1M!_~=&f0gYc1f_J>#u`uL ztLaY{73Rl6AKExy5boB*GXR7h27nm_z!pEnoCbi70$_#=04@W7{Q=o898T~H!fv)! zc(D7^^6MX^0w7prgEwi!4^v3?WFn6VQHIv3eHy z^%80h$~^(;k|U2J>dd6CYZ%;`~;_oMGV2PpL=UW`oow?R;{;A9wTjC}77~55l z+G93%x5JEchjTVvf)r!25|8&o9$Ow}&H%@$0m_jPR*je=r0HILfzd!xJeT^m7@|)) zCow&pw5mZ>ap_g{_Va{z$3`r}`p0{eii{}B`?wkpHUt@hee~9u)>XM}xpMtVso;n* zw>GFF+va3T#x<@)zLp_gHBfknRilQpX)K+0b`laG`+15u6C75J#-8|cgkq5kb|vx! znLUF_MFo*{#|Dnrll9d0kW&|j;YS)Xz%x%Qv&;fFB+RmD(CnA-J7*mK*Szy>Ye*D} z%IOg!KjyL3Wgc{RvpXs$a`O`EM6qSiYXDY>G{gt42+G7$t_6fVO^3N7BNAHacD}P#wxAMMOj7Mbijzt*jY&;*y{~q8x{NuGwRI`Oje^zyM%UcPbLX37ogylwp`YvL z(G5?-y$nx?km)6zt?T0i1>2Ye&d2vkMW4kGWR#22cB1@U&gAe?5WhkF3LocxhN^hJvbnV1m35^f{|OWR*RPxIiN=EUwyQW%>( zm5u_jRvYZ>@F_x+rzJC;h{lpgm&CP6I^#9U0%=-@&J9K;tk1X%XN|vUdH7^GkaDQp z+AgwL4Xq-u&&VWf*D}h`NGTu`hq#yJg*3=}QMc9p)qS)#F@$5$V~X&C%FBOIrz*!q zi%!x$dwHc^X_u2&9NLNqq zo1ncC)7L}bv6QJk2I44^4 zDUNmVK!b1W_PgWvlgt*)pRoE|FZ*b6I{K0^@+OZezR6}n1CEK`6#WhnyePk}a+2$> z*`G72&@x7h+m=>oehq)!Ud3aq3oP#(pIRFfo*1aS(2RX~y$j`9GAqrb5tzt_Sy9`< zo|3hRq)0fDo-E{T^Ygg6y_Yg5u&Xsg?UU7vi#r0d*6AHc%PFaX77qzVW3>oD$PRy$ z6gc7b9bwp(1iMo-yO#=E5x;by;BW3(%Bc1hKICZAnKnWsT{B0-CCq)o$t=+c`wER< zZm^$Q;Jrs!!!m@kx{|KC5{-*vQpg7F?k}A>;qP}*uuZH6{LhrS-m==Njm^+P-dX@U?kP2y;aRow)l2H;|1Dq_pvs50XFsJq z<-fE;!Ka*qJuU}RaPEN=z5omgqpOX^Xk+vpQ3g1S9uBRqg+k#_C_}vjss91gD;_?c q*M1M!_~=&f0gYc1f_","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":"cc61ebc4-7e95-4e47-bfec-8c852dda92ad","path":"sprites/s_node_monitor_capture/s_node_monitor_capture.yy",},},},"Disabled":false,"id":"f15b0c9a-f1de-4b24-9525-7584f6d33d10","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