diff --git a/objects/o_dialog_add_node/Draw_64.gml b/objects/o_dialog_add_node/Draw_64.gml index 46107ce0d..bd355820a 100644 --- a/objects/o_dialog_add_node/Draw_64.gml +++ b/objects/o_dialog_add_node/Draw_64.gml @@ -11,8 +11,7 @@ if !ready exit; WIDGET_CURRENT = tb_search; if(search_string == "") { - tb_search.focus = false; - tb_search.hover = false; + tb_search.setActiveFocus(false, false); tb_search.sprite_index = 1; catagory_pane.setActiveFocus(sFOCUS, sHOVER); @@ -24,8 +23,7 @@ if !ready exit; node_selecting = 0; } else { - tb_search.focus = true; - tb_search.hover = true; + tb_search.setActiveFocus(true, true); draw_sprite_stretched(THEME.ui_panel_bg, 0, dialog_x + ui(14), dialog_y + ui(52), dialog_w - ui(28), dialog_h - ui(66)); search_pane.setActiveFocus(sFOCUS, sHOVER); search_pane.draw(dialog_x + ui(16), dialog_y + ui(52)); diff --git a/objects/o_dialog_scrollbox/Alarm_0.gml b/objects/o_dialog_scrollbox/Alarm_0.gml deleted file mode 100644 index f63b9003b..000000000 --- a/objects/o_dialog_scrollbox/Alarm_0.gml +++ /dev/null @@ -1,18 +0,0 @@ -/// @description init -#region pos - var hght = line_height(f_p0, 8); - var hh = 0; - - for( var i = 0; i < array_length(scrollbox.data); i++ ) { - if(scrollbox.data[i] == -1) { - hh += ui(8); - continue; - } - - hh += hght; - } - - dialog_h = min(max_h, hh); - sc_content.resize(dialog_w, dialog_h); -#endregion -event_inherited(); \ No newline at end of file diff --git a/objects/o_dialog_scrollbox/Create_0.gml b/objects/o_dialog_scrollbox/Create_0.gml index eacf05e89..f9237acf8 100644 --- a/objects/o_dialog_scrollbox/Create_0.gml +++ b/objects/o_dialog_scrollbox/Create_0.gml @@ -2,27 +2,76 @@ event_inherited(); #region - max_h = 640; - align = fa_center; + max_h = 640; + align = fa_center; draggable = false; destroy_on_click_out = true; - selecting = -1; - scrollbox = noone; - initVal = 0; - update_hover = true; + selecting = -1; + scrollbox = noone; + data = []; + initVal = 0; + update_hover = true; + + search_string = ""; + KEYBOARD_STRING = ""; + tb_search = new textBox(TEXTBOX_INPUT.text, function(str) { + search_string = string(str); + filterSearch(); + }); + tb_search.font = f_p2; + tb_search.color = COLORS._main_text_sub; + tb_search.align = fa_left; + tb_search.auto_update = true; + WIDGET_CURRENT = tb_search; anchor = ANCHOR.top | ANCHOR.left; + function initScroll(scroll) { + scrollbox = scroll; + dialog_w = scroll.w; + data = scroll.data; + setSize(); + } + + function filterSearch() { + if(search_string == "") { + data = scrollbox.data; + setSize(); + return; + } + + data = []; + for( var i = 0; i < array_length(scrollbox.data); i++ ) { + var val = scrollbox.data[i]; + + if(val == -1) continue; + if(string_pos(string_lower(search_string), string_lower(val)) > 0) + array_push(data, val); + } + + setSize(); + } + + function setSize() { + var hght = line_height(f_p0, 8); + var hh = ui(16 + 24); + + for( var i = 0; i < array_length(data); i++ ) + hh += data[i] == -1? ui(8) : hght; + + dialog_h = min(max_h, hh); + sc_content.resize(dialog_w, dialog_h); + } + sc_content = new scrollPane(0, 0, function(_y, _m) { draw_clear_alpha(COLORS.panel_bg_clear, 0); var hght = line_height(f_p0, 8); - var data = scrollbox.data; var _dw = sc_content.surface_w; var _h = 0; var _ly = _y; - var hovering = -1; + var hovering = ""; for(var i = 0; i < array_length(data); i++) { if(data[i] == -1) { @@ -35,7 +84,7 @@ event_inherited(); if(sHOVER && sc_content.hover && point_in_rectangle(_m[0], _m[1], 0, _ly + 1, _dw, _ly + hght - 1)) { selecting = i; - hovering = i; + hovering = data[i]; } if(selecting == i) { @@ -59,8 +108,10 @@ event_inherited(); if(update_hover) { UNDO_HOLDING = true; - if(hovering > -1) scrollbox.onModify(hovering); - else scrollbox.onModify(initVal); + if(hovering != "") + scrollbox.onModify(array_find(scrollbox.data, hovering)); + else + scrollbox.onModify(initVal); UNDO_HOLDING = false; } diff --git a/objects/o_dialog_scrollbox/Draw_64.gml b/objects/o_dialog_scrollbox/Draw_64.gml index 94e2d78b7..fa8c05c89 100644 --- a/objects/o_dialog_scrollbox/Draw_64.gml +++ b/objects/o_dialog_scrollbox/Draw_64.gml @@ -2,8 +2,13 @@ #region draw draw_sprite_stretched(THEME.textbox, 3, dialog_x, dialog_y, dialog_w, dialog_h); + WIDGET_CURRENT = tb_search; + tb_search.setActiveFocus(true, true); + tb_search.draw(dialog_x + ui(8), dialog_y + ui(8), dialog_w - ui(16), ui(24), search_string); + tb_search.sprite_index = 0; + sc_content.active = sHOVER; - sc_content.draw(dialog_x, dialog_y); + sc_content.draw(dialog_x, dialog_y + ui(16 + 24)); draw_sprite_stretched(THEME.textbox, 1, dialog_x, dialog_y, dialog_w, dialog_h); #endregion \ No newline at end of file diff --git a/objects/o_dialog_scrollbox/o_dialog_scrollbox.yy b/objects/o_dialog_scrollbox/o_dialog_scrollbox.yy index 546b69b88..a8420c523 100644 --- a/objects/o_dialog_scrollbox/o_dialog_scrollbox.yy +++ b/objects/o_dialog_scrollbox/o_dialog_scrollbox.yy @@ -4,7 +4,6 @@ "name": "o_dialog_scrollbox", "eventList": [ {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":0,"eventType":0,"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":64,"eventType":8,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":0,"eventType":1,"isDnD":false,}, ], diff --git a/scripts/globals/globals.gml b/scripts/globals/globals.gml index 4b2f71ed4..ee1ddea6f 100644 --- a/scripts/globals/globals.gml +++ b/scripts/globals/globals.gml @@ -33,7 +33,7 @@ globalvar VERSION, SAVEFILE_VERSION, VERSION_STRING; VERSION = 1140; SAVEFILE_VERSION = 1400; - VERSION_STRING = "1.14.0pr2"; + VERSION_STRING = "1.14.0pr3"; globalvar NODES, NODE_MAP, APPEND_MAP, HOTKEYS, HOTKEY_CONTEXT, NODE_INSTANCES; @@ -126,7 +126,7 @@ #macro RETURN_ON_REST if(!ANIMATOR.is_playing || !ANIMATOR.frame_progress) return; function print(str) { - show_debug_message(string(str)); + //show_debug_message(string(str)); noti_status(string(str)); } diff --git a/scripts/node_blur_directional/node_blur_directional.gml b/scripts/node_blur_directional/node_blur_directional.gml index cc91e9181..760289171 100644 --- a/scripts/node_blur_directional/node_blur_directional.gml +++ b/scripts/node_blur_directional/node_blur_directional.gml @@ -2,6 +2,7 @@ function Node_Blur_Directional(_x, _y, _group = noone) : Node_Processor(_x, _y, name = "Directional Blur"; shader = sh_blur_directional; + uniform_dim = shader_get_uniform(shader, "size"); uniform_str = shader_get_uniform(shader, "strength"); uniform_dir = shader_get_uniform(shader, "direction"); @@ -53,6 +54,7 @@ function Node_Blur_Directional(_x, _y, _group = noone) : Node_Processor(_x, _y, BLEND_OVERRIDE; shader_set(shader); + shader_set_uniform_f(uniform_dim, max(surface_get_width(_data[0]), surface_get_height( _data[1]))); shader_set_uniform_f(uniform_str, _str); shader_set_uniform_f(uniform_dir, _dir + 90); draw_surface_safe(_data[0], 0, 0); diff --git a/scripts/node_pack_sprites/node_pack_sprites.gml b/scripts/node_pack_sprites/node_pack_sprites.gml index e30a3de19..632763a12 100644 --- a/scripts/node_pack_sprites/node_pack_sprites.gml +++ b/scripts/node_pack_sprites/node_pack_sprites.gml @@ -6,26 +6,33 @@ function Node_Pack_Sprites(_x, _y, _group = noone) : Node(_x, _y, _group) constr inputs[| 1] = nodeValue("Algorithm", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0) .setDisplay(VALUE_DISPLAY.enum_scroll, [ "Skyline", "Shelf", "Top left", "Best fit" ], { update_hover: false }) - inputs[| 2] = nodeValue("Max width", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 32); + inputs[| 2] = nodeValue("Max width", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 128); - inputs[| 3] = nodeValue("Max height", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 32); + inputs[| 3] = nodeValue("Max height", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 128); + + inputs[| 4] = nodeValue("Spacing", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0); outputs[| 0] = nodeValue("Packed image", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); outputs[| 1] = nodeValue("Atlas data", self, JUNCTION_CONNECT.output, VALUE_TYPE.struct, []); + input_display_list = [ + 0, 4, 1, 2, 3, + ] + static drawOverlay = function(active, _x, _y, _s, _mx, _my, _snx, _sny) { var rect = outputs[| 1].getValue(); + var spac = inputs[| 4].getValue(); draw_set_color(COLORS._main_accent); for( var i = 0; i < array_length(rect); i++ ) { var r = rect[i]; draw_rectangle( - _x + r.x * _s, - _y + r.y * _s, - _x + r.x * _s + r.w * _s, - _y + r.y * _s + r.h * _s, true); + _x + _s * (r.x + spac), + _y + _s * (r.y + spac), + _x + _s * (r.x + r.w - spac), + _y + _s * (r.y + r.h - spac), true); } } @@ -39,6 +46,7 @@ function Node_Pack_Sprites(_x, _y, _group = noone) : Node(_x, _y, _group) constr static update = function() { var _inpt = inputs[| 0].getValue(); var _algo = inputs[| 1].getValue(); + var _spac = inputs[| 4].getValue(); if(!is_array(_inpt) || array_length(_inpt) == 0) return; @@ -48,7 +56,8 @@ function Node_Pack_Sprites(_x, _y, _group = noone) : Node(_x, _y, _group) constr var s = _inpt[i]; if(!is_surface(s)) continue; - _rects[i] = new spriteAtlasData(0, 0, surface_get_width(s), surface_get_height(s), s, i); + _rects[i] = new spriteAtlasData(0, 0, surface_get_width(s) + _spac * 2, + surface_get_height(s) + _spac * 2, s, i); } var pack; @@ -88,7 +97,7 @@ function Node_Pack_Sprites(_x, _y, _group = noone) : Node(_x, _y, _group) constr for( var i = 0; i < array_length(rect); i++ ) { var r = rect[i]; - draw_surface(r.surface, r.x, r.y); + draw_surface(r.surface, r.x + _spac, r.y + _spac); } BLEND_NORMAL diff --git a/scripts/node_registry/node_registry.gml b/scripts/node_registry/node_registry.gml index 2c788006a..40887c7b5 100644 --- a/scripts/node_registry/node_registry.gml +++ b/scripts/node_registry/node_registry.gml @@ -395,7 +395,7 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor { addNodeObject(compose, "Stack", s_node_draw_stack, "Node_Stack", [1, Node_Stack],, "Place image next to each other linearly, or on top of each other.").setVersion(1070); addNodeObject(compose, "Camera", s_node_camera, "Node_Camera", [1, Node_Camera],, "Create camera that crop image to fix dimension with control of position, zoom. Also can be use to create parallax effect."); addNodeObject(compose, "Render Spritesheet", s_node_sprite_sheet, "Node_Render_Sprite_Sheet", [1, Node_Render_Sprite_Sheet],, "Create spritesheet from image array or animation."); - addNodeObject(compose, "Pack Sprites", s_node_pack_sprite, "Node_Pack_Sprites", [1, Node_Pack_Sprites]).setVersion(1140); + addNodeObject(compose, "Pack Sprites", s_node_pack_sprite, "Node_Pack_Sprites", [1, Node_Pack_Sprites],, "Combine array of images with different dimension using different algorithms.").setVersion(1140); var renderNode = ds_list_create(); addNodeCatagory("Render", renderNode); @@ -452,7 +452,7 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor { addNodeObject(values, "Sort Array", s_node_array_sort, "Node_Array_Sort", [1, Node_Array_Sort], ["array sort"]).setVersion(1120); addNodeObject(values, "Shuffle Array", s_node_array_shuffle, "Node_Array_Shuffle", [1, Node_Array_Shuffle], ["array shuffle"]).setVersion(1120); addNodeObject(values, "Loop Array", s_node_loop_array, "Node_Iterate_Each", [1, Node_Iterate_Each], ["iterate each", "for each", "array loop"], "Create group that iterate to each member in an array."); - addNodeObject(values, "Filter Array", s_node_filter_array, "Node_Iterate_Filter", [1, Node_Iterate_Filter], "Filter array using condition.").setVersion(1140); + addNodeObject(values, "Filter Array", s_node_filter_array, "Node_Iterate_Filter", [1, Node_Iterate_Filter],, "Filter array using condition.").setVersion(1140); ds_list_add(values, "Paths"); addNodeObject(values, "Path", s_node_path, "Node_Path", [1, Node_Path]); @@ -524,13 +524,13 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor { addNodeObject(node, "Feedback", s_node_feedback, "Node_Feedback", [1, Node_Feedback],, "Create group that reuse output from last frame to the current one."); addNodeObject(node, "Loop", s_node_loop, "Node_Iterate", [1, Node_Iterate], ["iterate", "for"], "Create group that reuse output as input repeatedly in one frame."); addNodeObject(node, "Loop Array", s_node_loop_array, "Node_Iterate_Each", [1, Node_Iterate_Each], ["iterate each", "for each", "array loop"], "Create group that iterate to each member in an array."); - addNodeObject(node, "Filter Array", s_node_filter_array,"Node_Iterate_Filter", [1, Node_Iterate_Filter], "Filter array using condition.").setVersion(1140); + addNodeObject(node, "Filter Array", s_node_filter_array,"Node_Iterate_Filter", [1, Node_Iterate_Filter],, "Filter array using condition.").setVersion(1140); ds_list_add(node, "Lua"); addNodeObject(node, "Lua Global", s_node_lua_global, "Node_Lua_Global", [1, Node_Lua_Global]).setVersion(1090); addNodeObject(node, "Lua Surface", s_node_lua_surface, "Node_Lua_Surface", [1, Node_Lua_Surface]).setVersion(1090); addNodeObject(node, "Lua Compute", s_node_lua_compute, "Node_Lua_Compute", [1, Node_Lua_Compute]).setVersion(1090); - + ds_list_add(node, "Organize"); addNodeObject(node, "Pin", s_node_pin, "Node_Pin", [1, Node_Pin],, "Craete pin to organize your connection. Can be create by double clicking on a connection line."); addNodeObject(node, "Frame", s_node_frame, "Node_Frame", [1, Node_Frame],, "Create frame surrounding nodes."); @@ -538,7 +538,7 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor { addNodeObject(node, "Tunnel Out", s_node_tunnel_out, "Node_Tunnel_Out", [1, Node_Tunnel_Out],, "Receive value from tunnel in of the same key."); addNodeObject(node, "Display Text", s_node_text_display,"Node_Display_Text", [1, Node_Display_Text],, "Display text on the graph."); addNodeObject(node, "Display Image", s_node_image, "Node_Display_Image", [0, Node_create_Display_Image],, "Display image on the graph."); - + 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); @@ -552,7 +552,6 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor { addNodeObject(hid, "Grid Noise", s_node_grid_noise, "Node_Grid_Noise", [1, Node_Grid_Noise]); addNodeObject(hid, "Triangular Noise", s_node_grid_tri_noise, "Node_Noise_Tri", [1, Node_Noise_Tri]).setVersion(1090); addNodeObject(hid, "Hexagonal Noise", s_node_grid_hex_noise, "Node_Noise_Hex", [1, Node_Noise_Hex]).setVersion(1090); - } #endregion diff --git a/scripts/node_scatter/node_scatter.gml b/scripts/node_scatter/node_scatter.gml index b89a8da18..6a4255f6d 100644 --- a/scripts/node_scatter/node_scatter.gml +++ b/scripts/node_scatter/node_scatter.gml @@ -49,7 +49,7 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c inputs[| 16] = nodeValue("Multiply alpha", self, JUNCTION_CONNECT.input, VALUE_TYPE.boolean, true); - inputs[| 17] = nodeValue("Use value", self, JUNCTION_CONNECT.input, VALUE_TYPE.text, [ "Scale" ]) + inputs[| 17] = nodeValue("Use value", self, JUNCTION_CONNECT.input, VALUE_TYPE.text, [ "Scale" ], "Apply the third value in each data point (if exist) on given properties.") .setDisplay(VALUE_DISPLAY.text_array, [ "Scale", "Rotation", "Color" ]); outputs[| 0] = nodeValue("Surface out", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone); diff --git a/scripts/node_value/node_value.gml b/scripts/node_value/node_value.gml index 1500d333b..54e991aa9 100644 --- a/scripts/node_value/node_value.gml +++ b/scripts/node_value/node_value.gml @@ -592,7 +592,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru if(display_data != -1) editWidget.onSurfaceSize = display_data; for( var i = 0; i < array_length(animators); i++ ) - animators[i].suffix = " " + array_safe_get(global.displaySuffix_Area, i); + animators[i].suffix = " " + array_safe_get(global.displaySuffix_Area, i, ""); extract_node = "Node_Area"; break; diff --git a/scripts/panel_function/panel_function.gml b/scripts/panel_function/panel_function.gml index c26eeac63..75dd5fdb3 100644 --- a/scripts/panel_function/panel_function.gml +++ b/scripts/panel_function/panel_function.gml @@ -129,6 +129,7 @@ PANEL_ANIMATION.updatePropertyList(); PANEL_MAIN.refresh(); + PANEL_MAIN.refreshSize(); } function findPanel(_type, _pane = PANEL_MAIN) { diff --git a/scripts/panel_inspector/panel_inspector.gml b/scripts/panel_inspector/panel_inspector.gml index 2ce63212c..bf63c451d 100644 --- a/scripts/panel_inspector/panel_inspector.gml +++ b/scripts/panel_inspector/panel_inspector.gml @@ -60,7 +60,10 @@ function Panel_Inspector() : PanelContent() constructor { for( var i = 0; i < array_length(meta_tb); i++ ) meta_tb[i].hide = true; - meta_display = [ [ "Metadata", false ], [ "Global variables", false ] ]; + meta_display = [ + [ "Metadata", false ], + [ "Global variables", false, button(function() { panelAdd("Panel_Globalvar", true); }, THEME.node_goto).setIcon(THEME.node_goto, 0, COLORS._main_icon) ] + ]; workshop_uploading = false; @@ -111,7 +114,12 @@ function Panel_Inspector() : PanelContent() constructor { var yy = _y + ui(8); for( var i = 0; i < 2; i++ ) { - if(_hover && point_in_rectangle(_m[0], _m[1], 0, yy, con_w, yy + ui(32))) { + var _meta = meta_display[i]; + var _txt = array_safe_get(_meta, 0); + var _b = array_safe_get(_meta, 2, noone); + var _x1 = con_w - (_b != noone) * ui(30); + + if(_hover && point_in_rectangle(_m[0], _m[1], 0, yy, _x1, yy + ui(32))) { draw_sprite_stretched_ext(THEME.group_label, 0, 0, yy, con_w, ui(32), COLORS.panel_inspector_group_hover, 1); if(mouse_press(mb_left, pFOCUS)) @@ -119,10 +127,15 @@ function Panel_Inspector() : PanelContent() constructor { } else draw_sprite_stretched_ext(THEME.group_label, 0, 0, yy, con_w, ui(32), COLORS.panel_inspector_group_bg, 1); + if(_b != noone) { + _b.setActiveFocus(pFOCUS, _hover); + _b.draw(_x1, yy + ui(2), ui(28), ui(28), _m, THEME.button_hide_fill); + } + draw_sprite_ui(THEME.arrow, meta_display[i][1]? 0 : 3, ui(16), yy + ui(32) / 2, 1, 1, 0, COLORS.panel_inspector_group_bg, 1); draw_set_text(f_p0, fa_left, fa_center, COLORS._main_text); - draw_text(ui(32), yy + ui(32) / 2, meta_display[i][0]); + draw_text(ui(32), yy + ui(32) / 2, _txt); yy += ui(32 + 8); hh += ui(32 + 8); diff --git a/scripts/panel_preview_window/panel_preview_window.gml b/scripts/panel_preview_window/panel_preview_window.gml index ad4e110cf..7950499dc 100644 --- a/scripts/panel_preview_window/panel_preview_window.gml +++ b/scripts/panel_preview_window/panel_preview_window.gml @@ -2,7 +2,7 @@ function Panel_Preview_Window() : PanelContent() constructor { min_w = ui(64); min_h = ui(64); padding = 8; - title_height = 32; + title_height = 24; w = ui(200); h = ui(200); diff --git a/scripts/scrollBox/scrollBox.gml b/scripts/scrollBox/scrollBox.gml index c0fe1bb22..16b0fe7b4 100644 --- a/scripts/scrollBox/scrollBox.gml +++ b/scripts/scrollBox/scrollBox.gml @@ -20,9 +20,8 @@ function scrollBox(_data, _onModify, update_hover = true) : widget() constructor open = true; with(dialogCall(o_dialog_scrollbox, x + open_rx, y + open_ry)) { - scrollbox = other; + initScroll(other); initVal = ind; - dialog_w = other.w; align = other.align; update_hover = other.update_hover; } diff --git a/scripts/textBox/textBox.gml b/scripts/textBox/textBox.gml index f36b47865..27237b154 100644 --- a/scripts/textBox/textBox.gml +++ b/scripts/textBox/textBox.gml @@ -298,7 +298,7 @@ function textBox(_input, _onModify, _extras = noone) : textInput(_input, _onModi } } - static draw = function(_x, _y, _w, _h, _text, _m, _format = VALUE_DISPLAY._default, halign = fa_left, valign = fa_top) { + static draw = function(_x, _y, _w, _h, _text, _m = mouse_ui, _format = VALUE_DISPLAY._default, halign = fa_left, valign = fa_top) { x = _x; y = _y; w = _w; diff --git a/shaders/sh_blur_directional/sh_blur_directional.fsh b/shaders/sh_blur_directional/sh_blur_directional.fsh index 4aa944bab..d30e7c603 100644 --- a/shaders/sh_blur_directional/sh_blur_directional.fsh +++ b/shaders/sh_blur_directional/sh_blur_directional.fsh @@ -4,13 +4,14 @@ varying vec2 v_vTexcoord; varying vec4 v_vColour; +uniform float size; uniform float strength; uniform float direction; vec4 dirBlur(vec2 angle) { vec4 acc = vec4(0.); - const float delta = 2.0 / 32.; + float delta = 1. / size; for(float i = -1.0; i <= 1.0; i += delta) { vec4 col = texture2D( gm_BaseTexture, v_vTexcoord - vec2(angle.x * i, angle.y * i)); diff --git a/sprites/s_node_array_find/485b89eb-2234-4d81-99b9-bf8602107342.png b/sprites/s_node_array_find/485b89eb-2234-4d81-99b9-bf8602107342.png deleted file mode 100644 index 7b9e1147f..000000000 Binary files a/sprites/s_node_array_find/485b89eb-2234-4d81-99b9-bf8602107342.png and /dev/null differ diff --git a/sprites/s_node_array_find/f3511add-c307-43fe-8a54-42dba2f6902e.png b/sprites/s_node_array_find/f3511add-c307-43fe-8a54-42dba2f6902e.png new file mode 100644 index 000000000..736b0d3d0 Binary files /dev/null and b/sprites/s_node_array_find/f3511add-c307-43fe-8a54-42dba2f6902e.png differ diff --git a/sprites/s_node_array_find/layers/485b89eb-2234-4d81-99b9-bf8602107342/4026b259-0dc5-43de-bd13-a45abf3880d9.png b/sprites/s_node_array_find/layers/485b89eb-2234-4d81-99b9-bf8602107342/4026b259-0dc5-43de-bd13-a45abf3880d9.png deleted file mode 100644 index 7b9e1147f..000000000 Binary files a/sprites/s_node_array_find/layers/485b89eb-2234-4d81-99b9-bf8602107342/4026b259-0dc5-43de-bd13-a45abf3880d9.png and /dev/null differ diff --git a/sprites/s_node_array_find/layers/f3511add-c307-43fe-8a54-42dba2f6902e/ce6385fd-2980-4ddb-99b0-b8404fbd608a.png b/sprites/s_node_array_find/layers/f3511add-c307-43fe-8a54-42dba2f6902e/ce6385fd-2980-4ddb-99b0-b8404fbd608a.png new file mode 100644 index 000000000..736b0d3d0 Binary files /dev/null and b/sprites/s_node_array_find/layers/f3511add-c307-43fe-8a54-42dba2f6902e/ce6385fd-2980-4ddb-99b0-b8404fbd608a.png differ diff --git a/sprites/s_node_array_find/s_node_array_find.yy b/sprites/s_node_array_find/s_node_array_find.yy index b93e241fe..df04e2c83 100644 --- a/sprites/s_node_array_find/s_node_array_find.yy +++ b/sprites/s_node_array_find/s_node_array_find.yy @@ -5,7 +5,7 @@ "bbox_bottom": 63, "bbox_left": 0, "bbox_right": 63, - "bbox_top": 1, + "bbox_top": 0, "bboxMode": 0, "collisionKind": 1, "collisionTolerance": 0, @@ -13,14 +13,14 @@ "edgeFiltering": false, "For3D": false, "frames": [ - {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"485b89eb-2234-4d81-99b9-bf8602107342",}, + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"f3511add-c307-43fe-8a54-42dba2f6902e",}, ], "gridX": 0, "gridY": 0, "height": 64, "HTile": false, "layers": [ - {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"4026b259-0dc5-43de-bd13-a45abf3880d9","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"ce6385fd-2980-4ddb-99b0-b8404fbd608a","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, ], "nineSlice": null, "origin": 4, @@ -54,7 +54,7 @@ "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":"485b89eb-2234-4d81-99b9-bf8602107342","path":"sprites/s_node_array_find/s_node_array_find.yy",},},},"Disabled":false,"id":"3b6a8969-e848-453e-a0a3-371c093fd229","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"f3511add-c307-43fe-8a54-42dba2f6902e","path":"sprites/s_node_array_find/s_node_array_find.yy",},},},"Disabled":false,"id":"5ee2c4dc-95ea-4fa2-aa7f-49a7382f14dc","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, ], "visibleRange": null, diff --git a/sprites/s_node_array_insert/ebf9117f-803c-4f64-96f8-da935a8af367.png b/sprites/s_node_array_insert/ebf9117f-803c-4f64-96f8-da935a8af367.png deleted file mode 100644 index 81aa1b0fc..000000000 Binary files a/sprites/s_node_array_insert/ebf9117f-803c-4f64-96f8-da935a8af367.png and /dev/null differ diff --git a/sprites/s_node_array_insert/f63aa093-c1c3-40e5-86ef-50f0b0a60709.png b/sprites/s_node_array_insert/f63aa093-c1c3-40e5-86ef-50f0b0a60709.png new file mode 100644 index 000000000..714316781 Binary files /dev/null and b/sprites/s_node_array_insert/f63aa093-c1c3-40e5-86ef-50f0b0a60709.png differ diff --git a/sprites/s_node_array_insert/layers/ebf9117f-803c-4f64-96f8-da935a8af367/31718e0d-5204-4154-8463-30dfdd17f0a6.png b/sprites/s_node_array_insert/layers/ebf9117f-803c-4f64-96f8-da935a8af367/31718e0d-5204-4154-8463-30dfdd17f0a6.png deleted file mode 100644 index 81aa1b0fc..000000000 Binary files a/sprites/s_node_array_insert/layers/ebf9117f-803c-4f64-96f8-da935a8af367/31718e0d-5204-4154-8463-30dfdd17f0a6.png and /dev/null differ diff --git a/sprites/s_node_array_insert/layers/f63aa093-c1c3-40e5-86ef-50f0b0a60709/98e2551e-b060-4d8a-8bde-074b667f0505.png b/sprites/s_node_array_insert/layers/f63aa093-c1c3-40e5-86ef-50f0b0a60709/98e2551e-b060-4d8a-8bde-074b667f0505.png new file mode 100644 index 000000000..714316781 Binary files /dev/null and b/sprites/s_node_array_insert/layers/f63aa093-c1c3-40e5-86ef-50f0b0a60709/98e2551e-b060-4d8a-8bde-074b667f0505.png differ diff --git a/sprites/s_node_array_insert/s_node_array_insert.yy b/sprites/s_node_array_insert/s_node_array_insert.yy index 431bcfe2a..a7470f26a 100644 --- a/sprites/s_node_array_insert/s_node_array_insert.yy +++ b/sprites/s_node_array_insert/s_node_array_insert.yy @@ -2,10 +2,10 @@ "resourceType": "GMSprite", "resourceVersion": "1.0", "name": "s_node_array_insert", - "bbox_bottom": 53, + "bbox_bottom": 59, "bbox_left": 0, "bbox_right": 63, - "bbox_top": 5, + "bbox_top": 3, "bboxMode": 0, "collisionKind": 1, "collisionTolerance": 0, @@ -13,14 +13,14 @@ "edgeFiltering": false, "For3D": false, "frames": [ - {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"ebf9117f-803c-4f64-96f8-da935a8af367",}, + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"f63aa093-c1c3-40e5-86ef-50f0b0a60709",}, ], "gridX": 0, "gridY": 0, "height": 64, "HTile": false, "layers": [ - {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"31718e0d-5204-4154-8463-30dfdd17f0a6","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"98e2551e-b060-4d8a-8bde-074b667f0505","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, ], "nineSlice": null, "origin": 4, @@ -54,7 +54,7 @@ "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":"ebf9117f-803c-4f64-96f8-da935a8af367","path":"sprites/s_node_array_insert/s_node_array_insert.yy",},},},"Disabled":false,"id":"f3698b85-e6b0-41fa-8dae-68bd4c6369a1","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"f63aa093-c1c3-40e5-86ef-50f0b0a60709","path":"sprites/s_node_array_insert/s_node_array_insert.yy",},},},"Disabled":false,"id":"639f0825-3bf3-4274-b048-c96e1a99e322","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, ], "visibleRange": null, diff --git a/sprites/s_node_array_remove/7950b925-ffc7-474b-92d7-4ce9a5cc915b.png b/sprites/s_node_array_remove/7950b925-ffc7-474b-92d7-4ce9a5cc915b.png new file mode 100644 index 000000000..789b5a905 Binary files /dev/null and b/sprites/s_node_array_remove/7950b925-ffc7-474b-92d7-4ce9a5cc915b.png differ diff --git a/sprites/s_node_array_remove/f08fbefa-fd59-4df3-a5c5-7b8c025be7a8.png b/sprites/s_node_array_remove/f08fbefa-fd59-4df3-a5c5-7b8c025be7a8.png deleted file mode 100644 index 4ca3fae77..000000000 Binary files a/sprites/s_node_array_remove/f08fbefa-fd59-4df3-a5c5-7b8c025be7a8.png and /dev/null differ diff --git a/sprites/s_node_array_remove/layers/7950b925-ffc7-474b-92d7-4ce9a5cc915b/6778c30b-9c9c-468d-b08e-4958d4ab815a.png b/sprites/s_node_array_remove/layers/7950b925-ffc7-474b-92d7-4ce9a5cc915b/6778c30b-9c9c-468d-b08e-4958d4ab815a.png new file mode 100644 index 000000000..789b5a905 Binary files /dev/null and b/sprites/s_node_array_remove/layers/7950b925-ffc7-474b-92d7-4ce9a5cc915b/6778c30b-9c9c-468d-b08e-4958d4ab815a.png differ diff --git a/sprites/s_node_array_remove/layers/f08fbefa-fd59-4df3-a5c5-7b8c025be7a8/638fed64-de39-4675-9773-9c8954a360c0.png b/sprites/s_node_array_remove/layers/f08fbefa-fd59-4df3-a5c5-7b8c025be7a8/638fed64-de39-4675-9773-9c8954a360c0.png deleted file mode 100644 index 4ca3fae77..000000000 Binary files a/sprites/s_node_array_remove/layers/f08fbefa-fd59-4df3-a5c5-7b8c025be7a8/638fed64-de39-4675-9773-9c8954a360c0.png and /dev/null differ diff --git a/sprites/s_node_array_remove/s_node_array_remove.yy b/sprites/s_node_array_remove/s_node_array_remove.yy index ec7612a91..9481ce143 100644 --- a/sprites/s_node_array_remove/s_node_array_remove.yy +++ b/sprites/s_node_array_remove/s_node_array_remove.yy @@ -2,10 +2,10 @@ "resourceType": "GMSprite", "resourceVersion": "1.0", "name": "s_node_array_remove", - "bbox_bottom": 53, + "bbox_bottom": 59, "bbox_left": 0, "bbox_right": 63, - "bbox_top": 5, + "bbox_top": 1, "bboxMode": 0, "collisionKind": 1, "collisionTolerance": 0, @@ -13,14 +13,14 @@ "edgeFiltering": false, "For3D": false, "frames": [ - {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"f08fbefa-fd59-4df3-a5c5-7b8c025be7a8",}, + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"7950b925-ffc7-474b-92d7-4ce9a5cc915b",}, ], "gridX": 0, "gridY": 0, "height": 64, "HTile": false, "layers": [ - {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"638fed64-de39-4675-9773-9c8954a360c0","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"6778c30b-9c9c-468d-b08e-4958d4ab815a","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, ], "nineSlice": null, "origin": 4, @@ -54,7 +54,7 @@ "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":"f08fbefa-fd59-4df3-a5c5-7b8c025be7a8","path":"sprites/s_node_array_remove/s_node_array_remove.yy",},},},"Disabled":false,"id":"2746be85-0309-4e9c-af55-0d0f812677d0","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"7950b925-ffc7-474b-92d7-4ce9a5cc915b","path":"sprites/s_node_array_remove/s_node_array_remove.yy",},},},"Disabled":false,"id":"0c50fa6f-a632-4474-aee0-792336a1b443","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, ], "visibleRange": null, diff --git a/sprites/s_node_color_mix/6c782cb4-7f9e-425d-9773-b1930c446a21.png b/sprites/s_node_color_mix/6c782cb4-7f9e-425d-9773-b1930c446a21.png deleted file mode 100644 index 58978ae82..000000000 Binary files a/sprites/s_node_color_mix/6c782cb4-7f9e-425d-9773-b1930c446a21.png and /dev/null differ diff --git a/sprites/s_node_color_mix/bb45ad69-af04-4e6a-9d9e-c15c1de8fe01.png b/sprites/s_node_color_mix/bb45ad69-af04-4e6a-9d9e-c15c1de8fe01.png new file mode 100644 index 000000000..7876659e8 Binary files /dev/null and b/sprites/s_node_color_mix/bb45ad69-af04-4e6a-9d9e-c15c1de8fe01.png differ diff --git a/sprites/s_node_color_mix/layers/6c782cb4-7f9e-425d-9773-b1930c446a21/69aa9ab2-2b5f-4a33-8a9d-1693f3174952.png b/sprites/s_node_color_mix/layers/6c782cb4-7f9e-425d-9773-b1930c446a21/69aa9ab2-2b5f-4a33-8a9d-1693f3174952.png deleted file mode 100644 index 58978ae82..000000000 Binary files a/sprites/s_node_color_mix/layers/6c782cb4-7f9e-425d-9773-b1930c446a21/69aa9ab2-2b5f-4a33-8a9d-1693f3174952.png and /dev/null differ diff --git a/sprites/s_node_color_mix/layers/bb45ad69-af04-4e6a-9d9e-c15c1de8fe01/b720a9c9-a0f0-4d7e-aa51-4e718722c51e.png b/sprites/s_node_color_mix/layers/bb45ad69-af04-4e6a-9d9e-c15c1de8fe01/b720a9c9-a0f0-4d7e-aa51-4e718722c51e.png new file mode 100644 index 000000000..7876659e8 Binary files /dev/null and b/sprites/s_node_color_mix/layers/bb45ad69-af04-4e6a-9d9e-c15c1de8fe01/b720a9c9-a0f0-4d7e-aa51-4e718722c51e.png differ diff --git a/sprites/s_node_color_mix/s_node_color_mix.yy b/sprites/s_node_color_mix/s_node_color_mix.yy index dc5d784e4..e28fa1d21 100644 --- a/sprites/s_node_color_mix/s_node_color_mix.yy +++ b/sprites/s_node_color_mix/s_node_color_mix.yy @@ -3,8 +3,8 @@ "resourceVersion": "1.0", "name": "s_node_color_mix", "bbox_bottom": 63, - "bbox_left": 1, - "bbox_right": 64, + "bbox_left": 0, + "bbox_right": 63, "bbox_top": 0, "bboxMode": 0, "collisionKind": 1, @@ -13,14 +13,14 @@ "edgeFiltering": false, "For3D": false, "frames": [ - {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"6c782cb4-7f9e-425d-9773-b1930c446a21",}, + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"bb45ad69-af04-4e6a-9d9e-c15c1de8fe01",}, ], "gridX": 0, "gridY": 0, "height": 64, "HTile": false, "layers": [ - {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"69aa9ab2-2b5f-4a33-8a9d-1693f3174952","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"b720a9c9-a0f0-4d7e-aa51-4e718722c51e","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, ], "nineSlice": null, "origin": 4, @@ -54,7 +54,7 @@ "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":"6c782cb4-7f9e-425d-9773-b1930c446a21","path":"sprites/s_node_color_mix/s_node_color_mix.yy",},},},"Disabled":false,"id":"f7fd0a5e-f412-458a-8a9f-5117b59a4403","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"bb45ad69-af04-4e6a-9d9e-c15c1de8fe01","path":"sprites/s_node_color_mix/s_node_color_mix.yy",},},},"Disabled":false,"id":"9201adfa-3d8e-4b1f-b3b9-7d16fa1981d6","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, ], "visibleRange": null, @@ -70,5 +70,5 @@ }, "type": 0, "VTile": false, - "width": 65, + "width": 64, } \ No newline at end of file