From 610a20f665d755ebb9ac80ef2955c08745f9fbbc Mon Sep 17 00:00:00 2001 From: Tanasart Date: Sun, 24 Dec 2023 18:06:44 +0700 Subject: [PATCH] video --- PixelComposer.resource_order | 4 + PixelComposer.yyp | 5 + animcurves/ac_disappear/ac_disappear.yy | 16 +++ 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/_p_dialog/Create_0.gml | 2 +- objects/addon_key_displayer/Create_0.gml | 7 +- objects/addon_key_displayer/Draw_75.gml | 19 +--- objects/addon_key_displayer/Step_1.gml | 3 + .../addon_key_displayer.yy | 1 + objects/o_dialog_splash/Draw_64.gml | 3 +- objects/o_main/Create_0.gml | 4 +- objects/o_video_banner/Create_0.gml | 8 ++ objects/o_video_banner/Draw_75.gml | 27 +++++ objects/o_video_banner/o_video_banner.yy | 34 ++++++ scripts/array_functions/array_functions.gml | 5 +- .../node_3d_point_affector.gml | 10 +- scripts/node_registry/node_registry.gml | 4 +- .../panel_animation_scaler.gml | 2 +- scripts/panel_graph/panel_graph.gml | 2 +- scripts/panel_menu/panel_menu.gml | 4 +- scripts/preferences/preferences.gml | 21 ++-- scripts/var_comparison/var_comparison.gml | 24 ++--- .../6c449033-0ee3-447b-8b8b-218f50c8327d.png | Bin 0 -> 2458 bytes .../931c2528-f9b7-4038-a994-c6608a7be0dc.png | Bin 0 -> 2458 bytes sprites/s_dialog_bg_l/s_dialog_bg_l.yy | 97 ++++++++++++++++++ .../7db36e9f-21a2-4294-a885-5a7115b42a2f.png | Bin 0 -> 1889 bytes .../e4859eac-f331-4c65-be2f-261f6d02ac9c.png | Bin 1594 -> 0 bytes .../253db449-eeff-4be0-aff9-24470467e77f.png | Bin 0 -> 1889 bytes .../bc1bf205-9d43-4b46-91a8-4dad29968c85.png | Bin 1594 -> 0 bytes sprites/s_node_vfx/s_node_vfx.yy | 14 +-- 33 files changed, 252 insertions(+), 64 deletions(-) create mode 100644 animcurves/ac_disappear/ac_disappear.yy create mode 100644 objects/addon_key_displayer/Step_1.gml create mode 100644 objects/o_video_banner/Create_0.gml create mode 100644 objects/o_video_banner/Draw_75.gml create mode 100644 objects/o_video_banner/o_video_banner.yy create mode 100644 sprites/s_dialog_bg_l/6c449033-0ee3-447b-8b8b-218f50c8327d.png create mode 100644 sprites/s_dialog_bg_l/layers/6c449033-0ee3-447b-8b8b-218f50c8327d/931c2528-f9b7-4038-a994-c6608a7be0dc.png create mode 100644 sprites/s_dialog_bg_l/s_dialog_bg_l.yy create mode 100644 sprites/s_node_vfx/7db36e9f-21a2-4294-a885-5a7115b42a2f.png delete mode 100644 sprites/s_node_vfx/e4859eac-f331-4c65-be2f-261f6d02ac9c.png create mode 100644 sprites/s_node_vfx/layers/7db36e9f-21a2-4294-a885-5a7115b42a2f/253db449-eeff-4be0-aff9-24470467e77f.png delete mode 100644 sprites/s_node_vfx/layers/e4859eac-f331-4c65-be2f-261f6d02ac9c/bc1bf205-9d43-4b46-91a8-4dad29968c85.png diff --git a/PixelComposer.resource_order b/PixelComposer.resource_order index a95574363..7be34477d 100644 --- a/PixelComposer.resource_order +++ b/PixelComposer.resource_order @@ -24,6 +24,8 @@ {"name":"key displayer","order":2,"path":"folders/addons/key displayer.yy",}, {"name":"animation_curve","order":9,"path":"folders/animation_curve.yy",}, {"name":"dialog","order":4,"path":"folders/dialog.yy",}, + {"name":"_others","order":15,"path":"folders/dialog/_others.yy",}, + {"name":"video banner","order":1,"path":"folders/dialog/_others/video banner.yy",}, {"name":"color selector","order":4,"path":"folders/dialog/color selector.yy",}, {"name":"graph","order":5,"path":"folders/dialog/graph.yy",}, {"name":"guide","order":12,"path":"folders/dialog/guide.yy",}, @@ -758,6 +760,7 @@ {"name":"s_node_transform","order":8,"path":"sprites/s_node_transform/s_node_transform.yy",}, {"name":"s_node_pb_draw_line","order":27,"path":"sprites/s_node_pb_draw_line/s_node_pb_draw_line.yy",}, {"name":"node_canvas","order":18,"path":"scripts/node_canvas/node_canvas.yy",}, + {"name":"ac_disappear","order":2,"path":"animcurves/ac_disappear/ac_disappear.yy",}, {"name":"s_node_path_array","order":11,"path":"sprites/s_node_path_array/s_node_path_array.yy",}, {"name":"node_display_image","order":4,"path":"scripts/node_display_image/node_display_image.yy",}, {"name":"node_rigid_global","order":5,"path":"scripts/node_rigid_global/node_rigid_global.yy",}, @@ -1757,6 +1760,7 @@ {"name":"sh_flood_fill_replace","order":2,"path":"shaders/sh_flood_fill_replace/sh_flood_fill_replace.yy",}, {"name":"sprite_loader","order":11,"path":"scripts/sprite_loader/sprite_loader.yy",}, {"name":"fd_rectangle_get_material_surface","order":12,"path":"scripts/fd_rectangle_get_material_surface/fd_rectangle_get_material_surface.yy",}, + {"name":"s_dialog_bg_l","order":1,"path":"sprites/s_dialog_bg_l/s_dialog_bg_l.yy",}, {"name":"fd_rectangle_clear","order":6,"path":"scripts/fd_rectangle_clear/fd_rectangle_clear.yy",}, {"name":"sh_tile_random","order":56,"path":"shaders/sh_tile_random/sh_tile_random.yy",}, {"name":"d3d_cone","order":5,"path":"scripts/d3d_cone/d3d_cone.yy",}, diff --git a/PixelComposer.yyp b/PixelComposer.yyp index 71507e746..7adb62998 100644 --- a/PixelComposer.yyp +++ b/PixelComposer.yyp @@ -45,6 +45,8 @@ {"resourceType":"GMFolder","resourceVersion":"1.0","name":"key displayer","folderPath":"folders/addons/key displayer.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"animation_curve","folderPath":"folders/animation_curve.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"dialog","folderPath":"folders/dialog.yy",}, + {"resourceType":"GMFolder","resourceVersion":"1.0","name":"_others","folderPath":"folders/dialog/_others.yy",}, + {"resourceType":"GMFolder","resourceVersion":"1.0","name":"video banner","folderPath":"folders/dialog/_others/video banner.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"color selector","folderPath":"folders/dialog/color selector.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"graph","folderPath":"folders/dialog/graph.yy",}, {"resourceType":"GMFolder","resourceVersion":"1.0","name":"guide","folderPath":"folders/dialog/guide.yy",}, @@ -1020,6 +1022,7 @@ {"id":{"name":"s_node_transform","path":"sprites/s_node_transform/s_node_transform.yy",},}, {"id":{"name":"s_node_pb_draw_line","path":"sprites/s_node_pb_draw_line/s_node_pb_draw_line.yy",},}, {"id":{"name":"node_canvas","path":"scripts/node_canvas/node_canvas.yy",},}, + {"id":{"name":"ac_disappear","path":"animcurves/ac_disappear/ac_disappear.yy",},}, {"id":{"name":"s_node_path_array","path":"sprites/s_node_path_array/s_node_path_array.yy",},}, {"id":{"name":"node_display_image","path":"scripts/node_display_image/node_display_image.yy",},}, {"id":{"name":"node_rigid_global","path":"scripts/node_rigid_global/node_rigid_global.yy",},}, @@ -1785,6 +1788,7 @@ {"id":{"name":"__vector","path":"scripts/__vector/__vector.yy",},}, {"id":{"name":"s_node_pin","path":"sprites/s_node_pin/s_node_pin.yy",},}, {"id":{"name":"s_node_9patch","path":"sprites/s_node_9patch/s_node_9patch.yy",},}, + {"id":{"name":"o_video_banner","path":"objects/o_video_banner/o_video_banner.yy",},}, {"id":{"name":"node_local_analyze","path":"scripts/node_local_analyze/node_local_analyze.yy",},}, {"id":{"name":"s_node_blur_contrast","path":"sprites/s_node_blur_contrast/s_node_blur_contrast.yy",},}, {"id":{"name":"fd_y","path":"scripts/fd_y/fd_y.yy",},}, @@ -2165,6 +2169,7 @@ {"id":{"name":"sh_flood_fill_replace","path":"shaders/sh_flood_fill_replace/sh_flood_fill_replace.yy",},}, {"id":{"name":"sprite_loader","path":"scripts/sprite_loader/sprite_loader.yy",},}, {"id":{"name":"fd_rectangle_get_material_surface","path":"scripts/fd_rectangle_get_material_surface/fd_rectangle_get_material_surface.yy",},}, + {"id":{"name":"s_dialog_bg_l","path":"sprites/s_dialog_bg_l/s_dialog_bg_l.yy",},}, {"id":{"name":"fd_rectangle_clear","path":"scripts/fd_rectangle_clear/fd_rectangle_clear.yy",},}, {"id":{"name":"sh_tile_random","path":"shaders/sh_tile_random/sh_tile_random.yy",},}, {"id":{"name":"instance_create","path":"scripts/instance_create/instance_create.yy",},}, diff --git a/animcurves/ac_disappear/ac_disappear.yy b/animcurves/ac_disappear/ac_disappear.yy new file mode 100644 index 000000000..411c8357d --- /dev/null +++ b/animcurves/ac_disappear/ac_disappear.yy @@ -0,0 +1,16 @@ +{ + "resourceType": "GMAnimCurve", + "resourceVersion": "1.2", + "name": "ac_disappear", + "channels": [ + {"resourceType":"GMAnimCurveChannel","resourceVersion":"1.0","name":"curve1","colour":4290799884,"points":[ + {"th0":-0.1,"th1":1.0,"tv0":0.0,"tv1":0.009826174,"x":0.0,"y":0.0,}, + {"th0":-0.0006187558,"th1":0.1,"tv0":0.0013324022,"tv1":0.0,"x":1.0,"y":1.0,}, + ],"visible":true,}, + ], + "function": 2, + "parent": { + "name": "video banner", + "path": "folders/dialog/_others/video banner.yy", + }, +} \ No newline at end of file diff --git a/fonts/_f_sdf/_f_sdf.old.png b/fonts/_f_sdf/_f_sdf.old.png index 83b2449b94b5f67f90ec74fb8ec50858d670ad3a..8805077c13d3ed65a7a54b436dd6ba8fa3e57ecb 100644 GIT binary patch delta 96 zcmdnl%(}CgwP6dRiKB=~h=HM%fr*ugnYMv}m4Siy-HfW~9*&H%7&2)M7miJ@bYxUe WK-Xh9^`j&M5O})!xvXdh=IA4p@Ef=nYMv}m4SiFY0LN1JscTjF=R}qH3m>yCa3AJ!SqT;Mg;|Q UJ=W77y=MRdPgg&ebxsLQ01q4*jsO4v delta 96 zcmdnl%(}CgwP6dRiKB>dh@qjCiHVi5skVWEm4U&Z`-1h;JscTjF=Tq1Rvw;S>By*{ WfUf7(^bQ#YAn5t9%DLn{LlD-&~V0|P4qgN>__&rP2AQZ@u#;=uRYMGOoK8YQj~ vB`Jv|sa7SKxv9k^iMa&~Mg~U4x`sx&M(BE`Kl-&6sE5JR)z4*}Q$iB}Pd6q1 delta 119 zcmZp=!rXL)c|+|>5#ta8b1OpwDS6G7^>bP0l+XkK9*!jX diff --git a/fonts/_f_sdf_medium/_f_sdf_medium.png b/fonts/_f_sdf_medium/_f_sdf_medium.png index 91b2720c1384cab0ec092695cd64329f0e294de7..10a6f3d36deae3d2d8dfdd76a9b1dd4711da04f6 100644 GIT binary patch delta 119 zcmZp=!rXL)c|+|>5t9%Db1M@AD+5z)10ZRzdqsi8zRg#&TT3nKtTfkssU}UUoXrya|u4nFpm(f5y44$rjF6*2UngAbYB_;p> delta 119 zcmZp=!rXL)c|+|>5#ta;Ln{*#D`PWl0|P4qgR|z`k0wuiDI0<=u_tSD90LP`Mu}@g vNlIc#s#Qs5ZfbE!Vr~J0k%5u1uAz~x5xSn&^^+QbdKf%i{an^LB{Ts5+n*!) diff --git a/objects/_p_dialog/Create_0.gml b/objects/_p_dialog/Create_0.gml index 43a1240e8..3be40f86e 100644 --- a/objects/_p_dialog/Create_0.gml +++ b/objects/_p_dialog/Create_0.gml @@ -23,7 +23,7 @@ parent = noone; alarm[0] = 1; - ready = false; + ready = false; destroy_on_escape = true; destroy_on_click_out = false; diff --git a/objects/addon_key_displayer/Create_0.gml b/objects/addon_key_displayer/Create_0.gml index 21cfa61d1..fad7b6928 100644 --- a/objects/addon_key_displayer/Create_0.gml +++ b/objects/addon_key_displayer/Create_0.gml @@ -2,10 +2,11 @@ event_inherited(); #region keys - name = "Key display"; - alpha = 0; + name = "Key display"; + alpha = 0; disp_text = ""; - depth = -999; + depth = -999; + last_key = ""; show_doubleclick = false; show_graph = false; diff --git a/objects/addon_key_displayer/Draw_75.gml b/objects/addon_key_displayer/Draw_75.gml index a176084ce..1d23e4b7e 100644 --- a/objects/addon_key_displayer/Draw_75.gml +++ b/objects/addon_key_displayer/Draw_75.gml @@ -8,7 +8,7 @@ } if(keyboard_check(vk_anykey)) { - var pres = keyboard_lastkey; + var pres = last_key; if(pres >= 32 && pres <= 126) { pres = string_upper(ansi_char(pres)); @@ -80,24 +80,12 @@ draw_sprite_ext(s_key_display_mouse, 0, mxs, mys, 1, 1, 0, c_white, 0.5); if(DOUBLE_CLICK) draw_sprite_ext(s_key_display_mouse, 1, mxs, mys, 1, 1, 0, COLORS._main_value_positive, 1); - //else if(mouse_press(mb_left)) - // draw_sprite_ext(s_key_display_mouse, 1, mxs, mys, 1, 1, 0, COLORS._main_accent, 1); - //else if(mouse_release(mb_left)) - // draw_sprite_ext(s_key_display_mouse, 1, mxs, mys, 1, 1, 0, COLORS._main_value_negative, 1); else if(mouse_click(mb_left)) draw_sprite_ext(s_key_display_mouse, 1, mxs, mys, 1, 1, 0, COLORS._main_icon_light, 1); - //if(mouse_press(mb_right)) - // draw_sprite_ext(s_key_display_mouse, 2, mxs, mys, 1, 1, 0, COLORS._main_accent, 1); - //else if(mouse_release(mb_right)) - // draw_sprite_ext(s_key_display_mouse, 2, mxs, mys, 1, 1, 0, COLORS._main_value_negative, 1); if(mouse_click(mb_right)) draw_sprite_ext(s_key_display_mouse, 2, mxs, mys, 1, 1, 0, COLORS._main_icon_light, 1); - //if(mouse_press(mb_middle)) - // draw_sprite_ext(s_key_display_mouse, 3, mxs, mys, 1, 1, 0, COLORS._main_accent, 1); - //else if(mouse_release(mb_middle)) - // draw_sprite_ext(s_key_display_mouse, 3, mxs, mys, 1, 1, 0, COLORS._main_value_negative, 1); if(mouse_click(mb_middle)) draw_sprite_ext(s_key_display_mouse, 3, mxs, mys, 1, 1, 0, COLORS._main_icon_light, 1); @@ -113,13 +101,12 @@ var ww = string_width(disp_text) + pd * 3; var hh = string_height(disp_text) + pd * 2; - var x1 = WIN_W - ui(40 + string_width(s_key_display_mouse)); + var x1 = WIN_W - ui(32 + sprite_get_width(s_key_display_mouse)); var y1 = win_y - ui(8); var x0 = x1 - ww; var y0 = y1 - hh; - draw_sprite_stretched_ext(THEME.key_display, 0, x0, y0, ww, hh, - pressing? COLORS._main_accent : COLORS._main_icon, alpha); + draw_sprite_stretched_ext(THEME.key_display, 0, x0, y0, ww, hh, pressing? COLORS._main_accent : COLORS._main_icon, alpha); draw_set_alpha(alpha); draw_text(x1 - pd * 1.5, y1 - pd, disp_text); draw_set_alpha(1); diff --git a/objects/addon_key_displayer/Step_1.gml b/objects/addon_key_displayer/Step_1.gml new file mode 100644 index 000000000..9ddd63ad6 --- /dev/null +++ b/objects/addon_key_displayer/Step_1.gml @@ -0,0 +1,3 @@ +/// @description Insert description here +// You can write your code in this editor +last_key = keyboard_lastkey; \ No newline at end of file diff --git a/objects/addon_key_displayer/addon_key_displayer.yy b/objects/addon_key_displayer/addon_key_displayer.yy index 245fc0c70..1bf1aa5d8 100644 --- a/objects/addon_key_displayer/addon_key_displayer.yy +++ b/objects/addon_key_displayer/addon_key_displayer.yy @@ -5,6 +5,7 @@ "eventList": [ {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":75,"eventType":8,"isDnD":false,}, {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":0,"eventType":0,"isDnD":false,}, + {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":1,"eventType":3,"isDnD":false,}, ], "managed": true, "overriddenProperties": [], diff --git a/objects/o_dialog_splash/Draw_64.gml b/objects/o_dialog_splash/Draw_64.gml index 81fd9114f..d457fabc4 100644 --- a/objects/o_dialog_splash/Draw_64.gml +++ b/objects/o_dialog_splash/Draw_64.gml @@ -3,8 +3,7 @@ if !ready exit; #region base UI DIALOG_DRAW_BG - if(sFOCUS) - DIALOG_DRAW_FOCUS + if(sFOCUS) DIALOG_DRAW_FOCUS #endregion #region content diff --git a/objects/o_main/Create_0.gml b/objects/o_main/Create_0.gml index cf662e7bf..8484a4bfe 100644 --- a/objects/o_main/Create_0.gml +++ b/objects/o_main/Create_0.gml @@ -306,8 +306,8 @@ #endregion #region debug - //instance_create_depth(0, 0, 0, addon_key_displayer); - global.__debug_runner = 0; __debug_animator_counter = 0; + + instance_create(0, 0, o_video_banner); #endregion \ No newline at end of file diff --git a/objects/o_video_banner/Create_0.gml b/objects/o_video_banner/Create_0.gml new file mode 100644 index 000000000..a5f0f7be1 --- /dev/null +++ b/objects/o_video_banner/Create_0.gml @@ -0,0 +1,8 @@ +/// @description Insert description here +depth = -99999; +anim = 1; +prog = 1; + +w = 620; +h = 240; +surface = surface_create(w, h); \ No newline at end of file diff --git a/objects/o_video_banner/Draw_75.gml b/objects/o_video_banner/Draw_75.gml new file mode 100644 index 000000000..e6ad0d426 --- /dev/null +++ b/objects/o_video_banner/Draw_75.gml @@ -0,0 +1,27 @@ +/// @description Insert description here +if(mouse_press(mb_middle)) anim = 0; + +prog = lerp_linear(prog, anim, 0.05); +if(prog == 0) instance_destroy(); + +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(s_icon_64, 0, h / 2, h / 2); + + draw_set_text(f_h2, fa_left, fa_bottom, c_white); + draw_text(210, h / 2 + 12, "Pixel Composer"); + + draw_set_text(f_h3, fa_left, fa_top, c_white); + draw_set_alpha(0.7); + draw_text(210, h / 2 + 10, "Tutorial 20: 3D in 1.16"); + draw_set_alpha(1); + +surface_reset_target(); + +x0 = WIN_W / 2 - w / 2; +y0 = WIN_H / 2 - h / 2 - (1 - prog) * 128; + +draw_surface_ext(surface, x0, y0, 1, 1, 0, c_white, animation_curve_eval(ac_disappear, prog)); \ No newline at end of file diff --git a/objects/o_video_banner/o_video_banner.yy b/objects/o_video_banner/o_video_banner.yy new file mode 100644 index 000000000..8033e2337 --- /dev/null +++ b/objects/o_video_banner/o_video_banner.yy @@ -0,0 +1,34 @@ +{ + "resourceType": "GMObject", + "resourceVersion": "1.0", + "name": "o_video_banner", + "eventList": [ + {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":0,"eventType":0,"isDnD":false,}, + {"resourceType":"GMEvent","resourceVersion":"1.0","name":"","collisionObjectId":null,"eventNum":75,"eventType":8,"isDnD":false,}, + ], + "managed": true, + "overriddenProperties": [], + "parent": { + "name": "video banner", + "path": "folders/dialog/_others/video banner.yy", + }, + "parentObjectId": null, + "persistent": false, + "physicsAngularDamping": 0.1, + "physicsDensity": 0.5, + "physicsFriction": 0.2, + "physicsGroup": 1, + "physicsKinematic": false, + "physicsLinearDamping": 0.1, + "physicsObject": false, + "physicsRestitution": 0.1, + "physicsSensor": false, + "physicsShape": 1, + "physicsShapePoints": [], + "physicsStartAwake": true, + "properties": [], + "solid": false, + "spriteId": null, + "spriteMaskId": null, + "visible": true, +} \ No newline at end of file diff --git a/scripts/array_functions/array_functions.gml b/scripts/array_functions/array_functions.gml index a902370fb..33e4419df 100644 --- a/scripts/array_functions/array_functions.gml +++ b/scripts/array_functions/array_functions.gml @@ -176,14 +176,15 @@ function array_merge() { #region return arr; } #endregion -function array_clone(arr) { #region +function array_clone(arr, _depth = -1) { #region INLINE + if(_depth == 0) return arr; if(!is_array(arr)) return arr; var _res = []; for( var i = 0, n = array_length(arr); i < n; i++ ) - _res[i] = array_clone(arr[i]); + _res[i] = array_clone(arr[i], _depth--); return _res; } #endregion diff --git a/scripts/node_3d_point_affector/node_3d_point_affector.gml b/scripts/node_3d_point_affector/node_3d_point_affector.gml index 9373a87de..bc217add6 100644 --- a/scripts/node_3d_point_affector/node_3d_point_affector.gml +++ b/scripts/node_3d_point_affector/node_3d_point_affector.gml @@ -73,8 +73,10 @@ function Node_3D_Point_Affector(_x, _y, _group = noone) : Node_3D_Object(_x, _y, } var _res = array_create(array_length(_iVal)); - var _dis = 0, _inR = 0, _ouR = 1; - + var _dis = 0; + var _inR = 0; + var _ouR = 1; + if(_ftyp == 0) { _dis = point_distance_3d(_pos[0], _pos[1], _pos[2], _p[0], _p[1], _p[2]); _inR = (_maxs - _fald) / 2; @@ -85,8 +87,8 @@ function Node_3D_Point_Affector(_x, _y, _group = noone) : Node_3D_Object(_x, _y, _ouR = _fald / 2; } - if(_dis >= _ouR) _res = _iVal; - else if(_dis <= _inR) _res = _fVal; + if(_dis >= _ouR) _res = array_clone(_iVal); + else if(_dis <= _inR) _res = array_clone(_fVal); else { var _inf = (_dis - _inR) / (_fald); _inf = curve_falloff == noone? _inf : curve_falloff.get(_inf); diff --git a/scripts/node_registry/node_registry.gml b/scripts/node_registry/node_registry.gml index d0f67eb6f..b6a684dc7 100644 --- a/scripts/node_registry/node_registry.gml +++ b/scripts/node_registry/node_registry.gml @@ -413,7 +413,7 @@ function __initNodes() { addNodeObject(strandSim, "Strand Collision", s_node_strandSim_collide, "Node_Strand_Collision", [1, Node_Strand_Collision],, "Create solid object for strands to collides to.").hideRecent().setVersion(1140); #endregion - ////////////////////////////////////////////////////////////////////////////////// + //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ var input = ds_list_create(); #region addNodeCatagory("IO", input); @@ -861,7 +861,7 @@ function __initNodes() { } 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, "Pin", s_node_pin, "Node_Pin", [1, Node_Pin],, "Create 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."); addNodeObject(node, "Tunnel In", s_node_tunnel_in, "Node_Tunnel_In", [1, Node_Tunnel_In],, "Create tunnel for sending value based on key matching."); addNodeObject(node, "Tunnel Out", s_node_tunnel_out, "Node_Tunnel_Out", [1, Node_Tunnel_Out],, "Receive value from tunnel in of the same key."); diff --git a/scripts/panel_animation_scaler/panel_animation_scaler.gml b/scripts/panel_animation_scaler/panel_animation_scaler.gml index 8510a127d..bb3f9728a 100644 --- a/scripts/panel_animation_scaler/panel_animation_scaler.gml +++ b/scripts/panel_animation_scaler/panel_animation_scaler.gml @@ -1,5 +1,5 @@ function Panel_Animation_Scaler() : Panel_Linear_Setting() constructor { - title = __txtx("anim_scale_title", "Animation scaler"); + title = __txtx("anim_scale_title", "Animation Scaler"); w = ui(380); scale_to = TOTAL_FRAMES; diff --git a/scripts/panel_graph/panel_graph.gml b/scripts/panel_graph/panel_graph.gml index 443235dcf..7594c5e8b 100644 --- a/scripts/panel_graph/panel_graph.gml +++ b/scripts/panel_graph/panel_graph.gml @@ -1364,7 +1364,7 @@ function Panel_Graph(project = PROJECT) : PanelContent() constructor { } } - nodes_selecting_jun = array_clone(nodes_selecting); + nodes_selecting_jun = array_clone(nodes_selecting, 1); #region draw junction name var gr_x = graph_x * graph_s; diff --git a/scripts/panel_menu/panel_menu.gml b/scripts/panel_menu/panel_menu.gml index 4b975fe1a..eb23e4c0a 100644 --- a/scripts/panel_menu/panel_menu.gml +++ b/scripts/panel_menu/panel_menu.gml @@ -129,12 +129,12 @@ function Panel_Menu() : PanelContent() constructor { ]), ]], [ __txt("Animation"), [ - menuItem(__txtx("panel_menu_animation_setting", "Animation setting..."), function() { + menuItem(__txtx("panel_menu_animation_setting", "Animation Settings..."), function() { var dia = dialogPanelCall(new Panel_Animation_Setting()); dia.anchor = ANCHOR.none; }, THEME.animation_setting), -1, - menuItem(__txtx("panel_menu_animation_scaler", "Animation scaler..."), function() { + menuItem(__txtx("panel_menu_animation_scaler", "Animation Scaler..."), function() { dialogPanelCall(new Panel_Animation_Scaler()); }, THEME.animation_timing), ]], diff --git a/scripts/preferences/preferences.gml b/scripts/preferences/preferences.gml index 733dada5c..f05914bf1 100644 --- a/scripts/preferences/preferences.gml +++ b/scripts/preferences/preferences.gml @@ -157,7 +157,7 @@ #endregion #region save load - function PREF_SAVE() { + function PREF_SAVE() { #region var map = {}; var save_l = []; @@ -180,9 +180,9 @@ json_save_struct(DIRECTORY + "Nodes/fav.json", global.FAV_NODES); json_save_struct(DIRECTORY + "Nodes/recent.json", global.RECENT_NODES); json_save_struct(DIRECTORY + "key_nodes.json", HOTKEYS_CUSTOM); - } + } #endregion - function PREF_LOAD() { + function PREF_LOAD() { #region var path = DIRECTORY + "keys.json"; if(!file_exists_empty(path)) return; @@ -214,14 +214,17 @@ directory_verify(filepath_resolve(PREFERENCES.temp_path)); if(PREFERENCES.move_directory) directory_set_current_working(DIRECTORY); - } + } #endregion - function PREF_APPLY() { + function PREF_APPLY() { #region if(PREFERENCES.double_click_delay > 1) PREFERENCES.double_click_delay /= 60; TESTING = struct_try_get(PREFERENCES, "test_mode", false); - if(TESTING) log_message("PREFERENCE", "Test mode enabled"); + if(TESTING) { + log_message("PREFERENCE", "Test mode enabled"); + instance_create_depth(0, 0, 0, addon_key_displayer); + } if(PREFERENCES.use_legacy_exception) resetException(); else setException(); @@ -245,14 +248,14 @@ var grav = struct_try_get(PREFERENCES, "physics_gravity", [ 0, 10 ]); physics_world_gravity(array_safe_get(grav, 0, 0), array_safe_get(grav, 1, 10)); - } + } #endregion - function find_hotkey(_context, _name) { + function find_hotkey(_context, _name) { #region if(!ds_map_exists(HOTKEYS, _context)) return noone; for(var j = 0; j < ds_list_size(HOTKEYS[? _context]); j++) { if(HOTKEYS[? _context][| j].name == _name) return HOTKEYS[? _context][| j]; } - } + } #endregion #endregion \ No newline at end of file diff --git a/scripts/var_comparison/var_comparison.gml b/scripts/var_comparison/var_comparison.gml index adcd14b4d..4c3ea1578 100644 --- a/scripts/var_comparison/var_comparison.gml +++ b/scripts/var_comparison/var_comparison.gml @@ -1,35 +1,35 @@ -function isEqual(val1, val2, struct_expand = false) { +function isEqual(val1, val2, struct_expand = false, _depth = 0) { #region INLINE - if(is_array(val1) && is_array(val2)) return array_member_equal(val1, val2); - if(struct_expand && is_struct(val1) && is_struct(val2)) return struct_equal(val1, val2); + if(_depth > 8) return false; + + if(is_array(val1) && is_array(val2)) return array_member_equal(val1, val2, _depth); + if(struct_expand && is_struct(val1) && is_struct(val2)) return struct_equal(val1, val2, _depth); return val1 == val2; -} +} #endregion -function array_member_equal(arr1, arr2) { +function array_member_equal(arr1, arr2, _depth = 0) { #region INLINE if(array_length(arr1) != array_length(arr2)) return false; for( var i = 0, n = array_length(arr1); i < n; i++ ) - if(!isEqual(arr1[i], arr2[i])) return false; + if(!isEqual(arr1[i], arr2[i],, _depth + 1)) return false; return true; -} +} #endregion -function struct_equal(str1, str2) { +function struct_equal(str1, str2, _depth = 0) { #region INLINE - //return json_stringify(str1) == json_stringify(str2); - var key1 = variable_struct_get_names(str1); var key2 = variable_struct_get_names(str2); if(!array_equals(key1, key2)) return false; for( var i = 0, n = array_length(key1); i < n; i++ ) - if(!isEqual(str1[$ key1[i]], str2[$ key1[i]])) return false; + if(!isEqual(str1[$ key1[i]], str2[$ key1[i]],, _depth + 1)) return false; return true; -} \ No newline at end of file +} #endregion \ No newline at end of file diff --git a/sprites/s_dialog_bg_l/6c449033-0ee3-447b-8b8b-218f50c8327d.png b/sprites/s_dialog_bg_l/6c449033-0ee3-447b-8b8b-218f50c8327d.png new file mode 100644 index 0000000000000000000000000000000000000000..8d6ff7daac2aeb128e17fa47fb68c88166300491 GIT binary patch literal 2458 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","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":"6c449033-0ee3-447b-8b8b-218f50c8327d","path":"sprites/s_dialog_bg_l/s_dialog_bg_l.yy",},},},"Disabled":false,"id":"fe80e8f1-57f1-4a7a-be4d-443e860078a7","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_vfx/7db36e9f-21a2-4294-a885-5a7115b42a2f.png b/sprites/s_node_vfx/7db36e9f-21a2-4294-a885-5a7115b42a2f.png new file mode 100644 index 0000000000000000000000000000000000000000..8c0127af94f54d6cefd6569f26ee8753ae1f3bdf GIT binary patch literal 1889 zcmZ{lXHXN^7RPUBQltx!-jTAA08$nNLJU11Qlv|evXl*r5Ccdtbb$pa0s#b3M9NA8 z6-Xeol_tHHP(->sX+Dvnz{W3c=6%>XbI*U~-1*Hp_nb3xldY{xIN62S0RWt4rYIY_ zB7PoL7P_zUyR$$SNl#N7O91Z413-ue;FumFYyfZ<4!|Y`039L#(4fbSH?GnzSZ-UG zpupKrD`_szrU&fIP=!GuV)h#! z{&!O%w5TD_ZHF|qf3tYSvi@81!NNMFq4l77J?ef{koI|fF89~75Ie>iMg`Qp5-5Qm zVe6JZ_Wlehz`M9B*91ZE6N)Ogu~{PwC5@zhAtDb!W`}9lu_{8#g3R7_%VF(&1%8r*SrbCo9PUiRgWpP(4#8ul;eyTLUcg7-LSHQNr`iPEkl9hZ5Nbo}?B?@L$0Q_da=vnM1g$h+TP((UGZm;HS?^Bh11yltuZ5qG_p z!{5Af&ZL&%v!Y)Rk8`R01)-e8u+0$%F4Dj}Hh+wP`uoXS^YRg>S#z}KM-eXm8|XnZ zNUk>)Zt%LzImcAQKPR!Gh6+>2RrC;)q-1d-nrPJUJkhkZ4TtTH@r3K<%y7ox5HHTT z4~ZM*sce0GzXraz>G#0gqIv7m!BZh9K9~dk$&UdZY^3})2JJ>N^qmiLL|+h)8tlDU z1&q@xct6|rw~cGTMkMQ;gn~1n?3IQ=e>zC__5DhT&(&dwb5R~ z(7T;H#@3N!Et*7zGFRA+`xZI@)Jpn}e>EWAB3AZA>5LSrdKCB{TxndIu^^}ZHx-QtY&d!YVEgn*_u52tEhSHR6$o)0UlY#@Sp4b@v9e~$z8%N6z``68QJFbk zYgGVv1N<@M07S=F{@osVL|NHFZfj5)HfGRkqGH`LTvfO%DPlYATPQxPHSk83BwIIu z-eYXtC(6lKW_rR?Yj>BX@;y{aJn;gfEC)t9<$aN|*dMTQ?^k)FKVPnOvXy2qrwyNt z$Vi@Dl7B{=vmIT`Fc-&&6|Sa!uA9x3s33Yn9A+ z_P1oZ`mX1LRc4JcpWqq%jPBD>o`7Kd1Y-@MZt9UDVS=h5)fz2-aea0DmE&7KUBW!( zI&MYLoZ#&w(to?5s^eJ)Rql(r0>kckLLPX@_#aU@=2$4QY-SewUX~k#b6AubtD3>S4Fq_gD&PU+=@B_>nA+wEi*Y5iDYk?n_$WEKuO z{ZT~`&Mt^~B>s(;_I$vYpLHZ=Pusq$eUM2HB=R*s!9ccc8eF@MjtaBPihYc`^bVp^ zjgcEqxcjVCO4 zN+1(Ua_t}hKbs;fk9inNZ zX3}bMT;6Y7T1M)pD64VajI+EHN@#k;54|;=DX?-a4Ma-gE(Ka5Z(9sv1m9-A+|qN9~G^nx--wt^P7oq2V23rc5znUNKWgv7-D16`t2y8r+H literal 0 HcmV?d00001 diff --git a/sprites/s_node_vfx/e4859eac-f331-4c65-be2f-261f6d02ac9c.png b/sprites/s_node_vfx/e4859eac-f331-4c65-be2f-261f6d02ac9c.png deleted file mode 100644 index ce2ce58dac1a9f2b6021797c66e3403ebdf3810f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1594 zcmV-A2F3Y_P)1 zZA=_R7{+FRmZQJ{cTfuy&H^nQdQ~H*A(ph7`cY_O6C<@vYm`J2lcM#9(ZmoV#6*kK zXf(MWw$>E=(U_u1V#zsM($u#0?dL`)D`00N!>)O@_6of9DVd_W+eP}Jw+ zrP&9ApZjPPd}dKCjt;=0T>vRCrQBwy%-dXNg2 z_?y!|4<2#HB>|7EeXF)0eckpYx3CoPdA4M!83r14md8S?}@UcSFMnWYxVxdyG|o|R8F`DaENq;?6W zta#eu3F~`xa-A1r{i^4hJ!5B{zC7`}KjsK1&b;4@J{`_I&=NLUUa0-l^?X|_5Mbbz zLzY-(-n3PXo93pj*+Pk~2r!eSa%VI6Z>0Z0c8W!nB{*8a1D3t^uig8)B1wQjT$^M@ zZul(;>B%c@AVn#%Q;HBrG$Fvq9Yu-)C-E8%3x>o@+$W-73a^{ywTcvx76tcnQep~B z;dO8p=2hC)gWhyz1cb%}0gJ&Kf*48hVeHzVPpvrMxpLMO4FbYyHG@~rts(;M3w0Bz zn46!SkTNA^;XX+1R?{wD5l5J^;zf=G zn$C8WnI3!w;>TinM<@R{{^j{bht!&n2?7AjxnLIl;?H`%!cRGi@ z=#r}h#S8%g_@ZXfdA+U(s4A$hKsq$uJ*2dDA_1n>jnG8%(`@$T$tG*C{(5b8yq9Kq zuG5}FNA*MqQ^Rp7K?)L=nH3k+l)herfJL*k!+Icsg`?VTS<~E*mYh>5_gV~Xq~O{w zjGS~(BIlK;wqjtaTas11XLCtoLNrNW(QsajXp_L?Ua)EP%iGm*UclOfp*un`w7lX}^xj7-DQ6-=vr^c>D0mR5ltH=vD z1-Y!0o1YWmR`VkcCN*Pva;`UWp(mmR!tjMxw;J(+NzF)+ zKWyD!3YM`9DKAkVnqmT0$w?4mhIRx*3I!Q=XfxILEdi z((n6mNJe(QC>AIRj7(}qTF!cD7*z5MS(u#lp(!s0Rfk3OgVcd#0Zd} z)#Qjt%}7E<7ZxsRK0FYfE6zaYaC}M2=`oX<5o#-h3@uy1uij&BKE}Jl>DQVN06@hd zMMo0?d{YB`H2i(6)s$Bi0(wZo8o26e3-=?Ypl@?7e)vYDotI63@Y?FxyFaf`b7AE2 z9+UlrXVeG)j+}d`Ni9|A{BY;~|ND?hcLZFffcXCRoA>Ov-BGVpAVIU2`&p}Q2oUhe zFZB*miMk+^NbM4E{I7}Lj;}7fc^E`Wxkk4H0H{G2X?m7&(?c8S>keyR*MQUG)5A`@ z$D?4^p$EqU3Fzagm9M*H7Z8GGG(=6A5Hy7apBX>Eb~ypHakyzp>|27^XNEu6J=Jo3 zQz3Sa31fV`Zkq!R3cE;|C{qKOjqj^N#=1D%I0>BPzW$2^0M0R*>7bn_jMjQ{`u07*qoM6N<$f+?--X#fBK diff --git a/sprites/s_node_vfx/layers/7db36e9f-21a2-4294-a885-5a7115b42a2f/253db449-eeff-4be0-aff9-24470467e77f.png b/sprites/s_node_vfx/layers/7db36e9f-21a2-4294-a885-5a7115b42a2f/253db449-eeff-4be0-aff9-24470467e77f.png new file mode 100644 index 0000000000000000000000000000000000000000..8c0127af94f54d6cefd6569f26ee8753ae1f3bdf GIT binary patch literal 1889 zcmZ{lXHXN^7RPUBQltx!-jTAA08$nNLJU11Qlv|evXl*r5Ccdtbb$pa0s#b3M9NA8 z6-Xeol_tHHP(->sX+Dvnz{W3c=6%>XbI*U~-1*Hp_nb3xldY{xIN62S0RWt4rYIY_ zB7PoL7P_zUyR$$SNl#N7O91Z413-ue;FumFYyfZ<4!|Y`039L#(4fbSH?GnzSZ-UG zpupKrD`_szrU&fIP=!GuV)h#! z{&!O%w5TD_ZHF|qf3tYSvi@81!NNMFq4l77J?ef{koI|fF89~75Ie>iMg`Qp5-5Qm zVe6JZ_Wlehz`M9B*91ZE6N)Ogu~{PwC5@zhAtDb!W`}9lu_{8#g3R7_%VF(&1%8r*SrbCo9PUiRgWpP(4#8ul;eyTLUcg7-LSHQNr`iPEkl9hZ5Nbo}?B?@L$0Q_da=vnM1g$h+TP((UGZm;HS?^Bh11yltuZ5qG_p z!{5Af&ZL&%v!Y)Rk8`R01)-e8u+0$%F4Dj}Hh+wP`uoXS^YRg>S#z}KM-eXm8|XnZ zNUk>)Zt%LzImcAQKPR!Gh6+>2RrC;)q-1d-nrPJUJkhkZ4TtTH@r3K<%y7ox5HHTT z4~ZM*sce0GzXraz>G#0gqIv7m!BZh9K9~dk$&UdZY^3})2JJ>N^qmiLL|+h)8tlDU z1&q@xct6|rw~cGTMkMQ;gn~1n?3IQ=e>zC__5DhT&(&dwb5R~ z(7T;H#@3N!Et*7zGFRA+`xZI@)Jpn}e>EWAB3AZA>5LSrdKCB{TxndIu^^}ZHx-QtY&d!YVEgn*_u52tEhSHR6$o)0UlY#@Sp4b@v9e~$z8%N6z``68QJFbk zYgGVv1N<@M07S=F{@osVL|NHFZfj5)HfGRkqGH`LTvfO%DPlYATPQxPHSk83BwIIu z-eYXtC(6lKW_rR?Yj>BX@;y{aJn;gfEC)t9<$aN|*dMTQ?^k)FKVPnOvXy2qrwyNt z$Vi@Dl7B{=vmIT`Fc-&&6|Sa!uA9x3s33Yn9A+ z_P1oZ`mX1LRc4JcpWqq%jPBD>o`7Kd1Y-@MZt9UDVS=h5)fz2-aea0DmE&7KUBW!( zI&MYLoZ#&w(to?5s^eJ)Rql(r0>kckLLPX@_#aU@=2$4QY-SewUX~k#b6AubtD3>S4Fq_gD&PU+=@B_>nA+wEi*Y5iDYk?n_$WEKuO z{ZT~`&Mt^~B>s(;_I$vYpLHZ=Pusq$eUM2HB=R*s!9ccc8eF@MjtaBPihYc`^bVp^ zjgcEqxcjVCO4 zN+1(Ua_t}hKbs;fk9inNZ zX3}bMT;6Y7T1M)pD64VajI+EHN@#k;54|;=DX?-a4Ma-gE(Ka5Z(9sv1m9-A+|qN9~G^nx--wt^P7oq2V23rc5znUNKWgv7-D16`t2y8r+H literal 0 HcmV?d00001 diff --git a/sprites/s_node_vfx/layers/e4859eac-f331-4c65-be2f-261f6d02ac9c/bc1bf205-9d43-4b46-91a8-4dad29968c85.png b/sprites/s_node_vfx/layers/e4859eac-f331-4c65-be2f-261f6d02ac9c/bc1bf205-9d43-4b46-91a8-4dad29968c85.png deleted file mode 100644 index ce2ce58dac1a9f2b6021797c66e3403ebdf3810f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1594 zcmV-A2F3Y_P)1 zZA=_R7{+FRmZQJ{cTfuy&H^nQdQ~H*A(ph7`cY_O6C<@vYm`J2lcM#9(ZmoV#6*kK zXf(MWw$>E=(U_u1V#zsM($u#0?dL`)D`00N!>)O@_6of9DVd_W+eP}Jw+ zrP&9ApZjPPd}dKCjt;=0T>vRCrQBwy%-dXNg2 z_?y!|4<2#HB>|7EeXF)0eckpYx3CoPdA4M!83r14md8S?}@UcSFMnWYxVxdyG|o|R8F`DaENq;?6W zta#eu3F~`xa-A1r{i^4hJ!5B{zC7`}KjsK1&b;4@J{`_I&=NLUUa0-l^?X|_5Mbbz zLzY-(-n3PXo93pj*+Pk~2r!eSa%VI6Z>0Z0c8W!nB{*8a1D3t^uig8)B1wQjT$^M@ zZul(;>B%c@AVn#%Q;HBrG$Fvq9Yu-)C-E8%3x>o@+$W-73a^{ywTcvx76tcnQep~B z;dO8p=2hC)gWhyz1cb%}0gJ&Kf*48hVeHzVPpvrMxpLMO4FbYyHG@~rts(;M3w0Bz zn46!SkTNA^;XX+1R?{wD5l5J^;zf=G zn$C8WnI3!w;>TinM<@R{{^j{bht!&n2?7AjxnLIl;?H`%!cRGi@ z=#r}h#S8%g_@ZXfdA+U(s4A$hKsq$uJ*2dDA_1n>jnG8%(`@$T$tG*C{(5b8yq9Kq zuG5}FNA*MqQ^Rp7K?)L=nH3k+l)herfJL*k!+Icsg`?VTS<~E*mYh>5_gV~Xq~O{w zjGS~(BIlK;wqjtaTas11XLCtoLNrNW(QsajXp_L?Ua)EP%iGm*UclOfp*un`w7lX}^xj7-DQ6-=vr^c>D0mR5ltH=vD z1-Y!0o1YWmR`VkcCN*Pva;`UWp(mmR!tjMxw;J(+NzF)+ zKWyD!3YM`9DKAkVnqmT0$w?4mhIRx*3I!Q=XfxILEdi z((n6mNJe(QC>AIRj7(}qTF!cD7*z5MS(u#lp(!s0Rfk3OgVcd#0Zd} z)#Qjt%}7E<7ZxsRK0FYfE6zaYaC}M2=`oX<5o#-h3@uy1uij&BKE}Jl>DQVN06@hd zMMo0?d{YB`H2i(6)s$Bi0(wZo8o26e3-=?Ypl@?7e)vYDotI63@Y?FxyFaf`b7AE2 z9+UlrXVeG)j+}d`Ni9|A{BY;~|ND?hcLZFffcXCRoA>Ov-BGVpAVIU2`&p}Q2oUhe zFZB*miMk+^NbM4E{I7}Lj;}7fc^E`Wxkk4H0H{G2X?m7&(?c8S>keyR*MQUG)5A`@ z$D?4^p$EqU3Fzagm9M*H7Z8GGG(=6A5Hy7apBX>Eb~ypHakyzp>|27^XNEu6J=Jo3 zQz3Sa31fV`Zkq!R3cE;|C{qKOjqj^N#=1D%I0>BPzW$2^0M0R*>7bn_jMjQ{`u07*qoM6N<$f+?--X#fBK diff --git a/sprites/s_node_vfx/s_node_vfx.yy b/sprites/s_node_vfx/s_node_vfx.yy index 7f6afa8c7..a19404383 100644 --- a/sprites/s_node_vfx/s_node_vfx.yy +++ b/sprites/s_node_vfx/s_node_vfx.yy @@ -2,10 +2,10 @@ "resourceType": "GMSprite", "resourceVersion": "1.0", "name": "s_node_vfx", - "bbox_bottom": 62, - "bbox_left": 1, - "bbox_right": 62, - "bbox_top": 1, + "bbox_bottom": 63, + "bbox_left": 0, + "bbox_right": 63, + "bbox_top": 0, "bboxMode": 0, "collisionKind": 1, "collisionTolerance": 0, @@ -13,14 +13,14 @@ "edgeFiltering": false, "For3D": false, "frames": [ - {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"e4859eac-f331-4c65-be2f-261f6d02ac9c",}, + {"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"7db36e9f-21a2-4294-a885-5a7115b42a2f",}, ], "gridX": 0, "gridY": 0, "height": 64, "HTile": false, "layers": [ - {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"bc1bf205-9d43-4b46-91a8-4dad29968c85","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,}, + {"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"253db449-eeff-4be0-aff9-24470467e77f","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":"e4859eac-f331-4c65-be2f-261f6d02ac9c","path":"sprites/s_node_vfx/s_node_vfx.yy",},},},"Disabled":false,"id":"1ce5decd-3286-48c7-87c0-47bf99d0038d","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, + {"resourceType":"Keyframe","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"7db36e9f-21a2-4294-a885-5a7115b42a2f","path":"sprites/s_node_vfx/s_node_vfx.yy",},},},"Disabled":false,"id":"d48a04cb-4d44-4ea0-92e4-25022c9e5e3e","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,}, ],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,}, ], "visibleRange": null,