This commit is contained in:
Tanasart 2023-03-23 19:38:50 +07:00
parent f68652c6b3
commit fde00230b8
37 changed files with 140 additions and 81 deletions

View file

@ -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));

View file

@ -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();

View file

@ -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;
}

View file

@ -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

View file

@ -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,},
],

View file

@ -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));
}

View file

@ -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);

View file

@ -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

View file

@ -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

View file

@ -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);

View file

@ -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;

View file

@ -129,6 +129,7 @@
PANEL_ANIMATION.updatePropertyList();
PANEL_MAIN.refresh();
PANEL_MAIN.refreshSize();
}
function findPanel(_type, _pane = PANEL_MAIN) {

View file

@ -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);

View file

@ -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);

View file

@ -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;
}

View file

@ -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;

View file

@ -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));

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

View file

@ -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<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","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<SpriteFrameKeyframe>","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,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 928 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View file

@ -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<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","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<SpriteFrameKeyframe>","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,

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 932 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View file

@ -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<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","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<SpriteFrameKeyframe>","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,

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View file

@ -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<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","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<SpriteFrameKeyframe>","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,
}