From bc0fd6e4301309c9a8e24b5ccd42bfe50792e855 Mon Sep 17 00:00:00 2001 From: Tanasart Date: Fri, 21 Jun 2024 08:52:35 +0700 Subject: [PATCH] - [Bake Path] Baking a single path will returns 2D array instead of 3D. --- scripts/globals/globals.gml | 2 +- scripts/node_path_bake/node_path_bake.gml | 10 ++++++++-- scripts/node_path_builder/node_path_builder.gml | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/scripts/globals/globals.gml b/scripts/globals/globals.gml index 25319bbd9..749859c73 100644 --- a/scripts/globals/globals.gml +++ b/scripts/globals/globals.gml @@ -196,7 +196,7 @@ #region debug global.FLAG = { - render : 1, + render : 0, renderTime : false, keyframe_override : true, wav_import : true, diff --git a/scripts/node_path_bake/node_path_bake.gml b/scripts/node_path_bake/node_path_bake.gml index 53527d80d..8afe617b0 100644 --- a/scripts/node_path_bake/node_path_bake.gml +++ b/scripts/node_path_bake/node_path_bake.gml @@ -11,6 +11,8 @@ function Node_Path_Bake(_x, _y, _group = noone) : Node(_x, _y, _group) construct .setDisplay(VALUE_DISPLAY.vector) .setArrayDepth(1); + path_amount = 1; + static drawOverlay = function(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) { #region var _path = getInputData(0); if(_path && struct_has(_path, "drawOverlay")) _path.drawOverlay(hover, active, _x, _y, _s, _mx, _my, _snx, _sny); @@ -18,7 +20,9 @@ function Node_Path_Bake(_x, _y, _group = noone) : Node(_x, _y, _group) construct var _segs = outputs[| 0].getValue(); var ox, oy, nx, ny; + if(path_amount == 1) _segs = [ _segs ]; draw_set_color(COLORS._main_icon); + for( var i = 0, n = array_length(_segs); i < n; i++ ) { var _seg = _segs[i]; @@ -41,8 +45,9 @@ function Node_Path_Bake(_x, _y, _group = noone) : Node(_x, _y, _group) construct if(_path == noone) return; if(_dist <= 0) return; - var _amo = _path.getLineCount(); - var _segs = array_create(_amo); + var _amo = _path.getLineCount(); + path_amount = _amo; + var _segs = array_create(_amo); var _p = new __vec2(); @@ -59,6 +64,7 @@ function Node_Path_Bake(_x, _y, _group = noone) : Node(_x, _y, _group) construct _segs[i] = _seg; } + if(_amo == 1) _segs = _segs[0]; outputs[| 0].setValue(_segs); } #endregion diff --git a/scripts/node_path_builder/node_path_builder.gml b/scripts/node_path_builder/node_path_builder.gml index d835f176b..e6a65d5bf 100644 --- a/scripts/node_path_builder/node_path_builder.gml +++ b/scripts/node_path_builder/node_path_builder.gml @@ -1,6 +1,6 @@ function Node_Path_Builder(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { name = "Path Builder"; - setDimension(96, 48);; + setDimension(96, 48); #region ---- path ---- path_loop = false;