From 8ae0dc2a570577575d539005e8b48701d4184c69 Mon Sep 17 00:00:00 2001 From: Tanasart Date: Fri, 27 Dec 2024 09:04:09 +0700 Subject: [PATCH] [Stack] Fix output surface not clearing. --- scripts/__node_value_object/__node_value_object.gml | 2 +- scripts/globals/globals.gml | 6 +++--- scripts/node_stack/node_stack.gml | 9 +++++---- scripts/node_value/node_value.gml | 2 +- scripts/node_value_area/node_value_area.gml | 2 +- scripts/node_value_color/node_value_color.gml | 2 +- scripts/node_value_curve/node_value_curve.gml | 2 +- .../node_value_d3_material/node_value_d3_material.gml | 2 +- scripts/node_value_dimension/node_value_dimension.gml | 2 +- .../node_value_enum_button/node_value_enum_button.gml | 2 +- .../node_value_enum_scroll/node_value_enum_scroll.gml | 2 +- scripts/node_value_float/node_value_float.gml | 2 +- scripts/node_value_gradient/node_value_gradient.gml | 2 +- scripts/node_value_int/node_value_int.gml | 2 +- scripts/node_value_padding/node_value_padding.gml | 2 +- scripts/node_value_palette/node_value_palette.gml | 2 +- scripts/node_value_quarterion/node_value_quarterion.gml | 2 +- scripts/node_value_rotation/node_value_rotation.gml | 2 +- .../node_value_rotation_random.gml | 2 +- scripts/node_value_surface/node_value_surface.gml | 2 +- scripts/node_value_text/node_value_text.gml | 2 +- scripts/node_value_trigger/node_value_trigger.gml | 2 +- scripts/node_value_vec2/node_value_vec2.gml | 2 +- 23 files changed, 29 insertions(+), 28 deletions(-) diff --git a/scripts/__node_value_object/__node_value_object.gml b/scripts/__node_value_object/__node_value_object.gml index d3e21b2d2..0c26f1391 100644 --- a/scripts/__node_value_object/__node_value_object.gml +++ b/scripts/__node_value_object/__node_value_object.gml @@ -9,7 +9,7 @@ function __NodeValue_Object_Generic(_name, _node, _type, _value, _tooltip = "") static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return val; } diff --git a/scripts/globals/globals.gml b/scripts/globals/globals.gml index 9d44a35e8..2f091377a 100644 --- a/scripts/globals/globals.gml +++ b/scripts/globals/globals.gml @@ -42,10 +42,10 @@ globalvar HOTKEYS, HOTKEY_CONTEXT; LATEST_VERSION = 1_18_00_0; - VERSION = 1_18_06_0; + VERSION = 1_18_06_2; SAVE_VERSION = 1_18_05_0; - VERSION_STRING = MAC? "1.18.003m" : "1.18.6"; - BUILD_NUMBER = 1_18_06_0; + VERSION_STRING = MAC? "1.18.003m" : "1.18.6.2"; + BUILD_NUMBER = 1_18_06_2; PREF_VERSION = 1_17_1; var _vsp = string_split(VERSION_STRING, "."); diff --git a/scripts/node_stack/node_stack.gml b/scripts/node_stack/node_stack.gml index ba0cc567a..ad305819f 100644 --- a/scripts/node_stack/node_stack.gml +++ b/scripts/node_stack/node_stack.gml @@ -86,10 +86,13 @@ function Node_Stack(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { var oh = hh + _padd[PADDING.top] + _padd[PADDING.bottom]; var _outSurf = outputs[0].getValue(); - _outSurf = surface_verify(_outSurf, ow, oh, attrDepth()); + _outSurf = surface_verify(_outSurf, ow, oh, attrDepth()); - for( var i = 0, n = array_length(temp_surface); i < n; i++ ) + for( var i = 0, n = array_length(temp_surface); i < n; i++ ) { temp_surface[i] = surface_verify(temp_surface[i], ow, oh, attrDepth()); + surface_clear(temp_surface[i]); + } + blend_temp_surface = temp_surface[2]; var atlas = []; @@ -143,9 +146,7 @@ function Node_Stack(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { surface_set_target(_outSurf); DRAW_CLEAR BLEND_OVERRIDE - draw_surface_safe(temp_surface[ppind]); - BLEND_NORMAL surface_reset_target(); diff --git a/scripts/node_value/node_value.gml b/scripts/node_value/node_value.gml index 9b10920fc..519d4e866 100644 --- a/scripts/node_value/node_value.gml +++ b/scripts/node_value/node_value.gml @@ -1206,7 +1206,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; var dis = nod.display_type; diff --git a/scripts/node_value_area/node_value_area.gml b/scripts/node_value_area/node_value_area.gml index 2ca451678..e5c27797d 100644 --- a/scripts/node_value_area/node_value_area.gml +++ b/scripts/node_value_area/node_value_area.gml @@ -70,7 +70,7 @@ function __NodeValue_Area(_name, _node, _value, _data = {}) : NodeValue(_name, _ static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return valueProcess(val, nod, applyUnit, arrIndex); } diff --git a/scripts/node_value_color/node_value_color.gml b/scripts/node_value_color/node_value_color.gml index 4bedeaf90..525dfa510 100644 --- a/scripts/node_value_color/node_value_color.gml +++ b/scripts/node_value_color/node_value_color.gml @@ -7,7 +7,7 @@ function __NodeValue_Color(_name, _node, _value, _tooltip = "") : NodeValue(_nam static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return val; } diff --git a/scripts/node_value_curve/node_value_curve.gml b/scripts/node_value_curve/node_value_curve.gml index ea9d6210d..4d590f33c 100644 --- a/scripts/node_value_curve/node_value_curve.gml +++ b/scripts/node_value_curve/node_value_curve.gml @@ -7,7 +7,7 @@ function __NodeValue_Curve(_name, _node, _value) : NodeValue(_name, _node, CONNE static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return val; } diff --git a/scripts/node_value_d3_material/node_value_d3_material.gml b/scripts/node_value_d3_material/node_value_d3_material.gml index f874744ab..cd26a8ceb 100644 --- a/scripts/node_value_d3_material/node_value_d3_material.gml +++ b/scripts/node_value_d3_material/node_value_d3_material.gml @@ -11,7 +11,7 @@ function __NodeValue_D3Material(_name, _node, _value, _tooltip = "") : NodeValue static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; var dis = nod.display_type; diff --git a/scripts/node_value_dimension/node_value_dimension.gml b/scripts/node_value_dimension/node_value_dimension.gml index d72e48f39..885b6aa3b 100644 --- a/scripts/node_value_dimension/node_value_dimension.gml +++ b/scripts/node_value_dimension/node_value_dimension.gml @@ -15,7 +15,7 @@ function __NodeValue_Dimension(_node, value) : NodeValue("Dimension", _node, CON static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; if(typ != VALUE_TYPE.surface) { diff --git a/scripts/node_value_enum_button/node_value_enum_button.gml b/scripts/node_value_enum_button/node_value_enum_button.gml index 2173a6362..30cb2fc53 100644 --- a/scripts/node_value_enum_button/node_value_enum_button.gml +++ b/scripts/node_value_enum_button/node_value_enum_button.gml @@ -8,7 +8,7 @@ function __NodeValue_Enum_Button(_name, _node, _value, _data) : NodeValue(_name, static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return val; } diff --git a/scripts/node_value_enum_scroll/node_value_enum_scroll.gml b/scripts/node_value_enum_scroll/node_value_enum_scroll.gml index 7e3fd9381..46c9830b0 100644 --- a/scripts/node_value_enum_scroll/node_value_enum_scroll.gml +++ b/scripts/node_value_enum_scroll/node_value_enum_scroll.gml @@ -8,7 +8,7 @@ function __NodeValue_Enum_Scroll(_name, _node, _value, _data) : NodeValue(_name, static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return val; } diff --git a/scripts/node_value_float/node_value_float.gml b/scripts/node_value_float/node_value_float.gml index 2f22bd403..f2dd3aec3 100644 --- a/scripts/node_value_float/node_value_float.gml +++ b/scripts/node_value_float/node_value_float.gml @@ -12,7 +12,7 @@ function __NodeValue_Float(_name, _node, _value, _tooltip = "") : NodeValue(_nam static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; var dis = nod.display_type; diff --git a/scripts/node_value_gradient/node_value_gradient.gml b/scripts/node_value_gradient/node_value_gradient.gml index 4a88c7e60..5704219cb 100644 --- a/scripts/node_value_gradient/node_value_gradient.gml +++ b/scripts/node_value_gradient/node_value_gradient.gml @@ -7,7 +7,7 @@ function __NodeValue_Gradient(_name, _node, _value, _tooltip = "") : NodeValue(_ static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; if(is_instanceof(val, gradientObject)) return val; if(nod.type != VALUE_TYPE.color) return val; diff --git a/scripts/node_value_int/node_value_int.gml b/scripts/node_value_int/node_value_int.gml index 57bdc2b73..76dc8cda7 100644 --- a/scripts/node_value_int/node_value_int.gml +++ b/scripts/node_value_int/node_value_int.gml @@ -13,7 +13,7 @@ function __NodeValue_Int(_name, _node, _value, _tooltip = "") : NodeValue(_name, static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; var dis = nod.display_type; diff --git a/scripts/node_value_padding/node_value_padding.gml b/scripts/node_value_padding/node_value_padding.gml index 383cab60f..7a75179aa 100644 --- a/scripts/node_value_padding/node_value_padding.gml +++ b/scripts/node_value_padding/node_value_padding.gml @@ -18,7 +18,7 @@ function __NodeValue_Padding(_name, _node, _value, _tooltip = "") : NodeValue(_n static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var _d = array_get_depth(val); __nod = nod; diff --git a/scripts/node_value_palette/node_value_palette.gml b/scripts/node_value_palette/node_value_palette.gml index ec74b345c..916b33ec5 100644 --- a/scripts/node_value_palette/node_value_palette.gml +++ b/scripts/node_value_palette/node_value_palette.gml @@ -9,7 +9,7 @@ function __NodeValue_Palette(_name, _node, _value, _tooltip = "") : NodeValue(_n static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; if(!is_array(val)) val = [ val ]; return val; diff --git a/scripts/node_value_quarterion/node_value_quarterion.gml b/scripts/node_value_quarterion/node_value_quarterion.gml index 315c04ba8..ab33d4baf 100644 --- a/scripts/node_value_quarterion/node_value_quarterion.gml +++ b/scripts/node_value_quarterion/node_value_quarterion.gml @@ -8,7 +8,7 @@ function __NodeValue_Quaternion(_name, _node, _value, _tooltip = "") : __NodeVal static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; var dis = nod.display_type; diff --git a/scripts/node_value_rotation/node_value_rotation.gml b/scripts/node_value_rotation/node_value_rotation.gml index cc14913a6..34497fb91 100644 --- a/scripts/node_value_rotation/node_value_rotation.gml +++ b/scripts/node_value_rotation/node_value_rotation.gml @@ -8,7 +8,7 @@ function __NodeValue_Rotation(_name, _node, _value, _tooltip = "") : NodeValue(_ static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; if(typ == VALUE_TYPE.text) val = toNumber(val); diff --git a/scripts/node_value_rotation_random/node_value_rotation_random.gml b/scripts/node_value_rotation_random/node_value_rotation_random.gml index fca106aac..277fec919 100644 --- a/scripts/node_value_rotation_random/node_value_rotation_random.gml +++ b/scripts/node_value_rotation_random/node_value_rotation_random.gml @@ -9,7 +9,7 @@ function __NodeValue_Rotation_Random(_name, _node, _value, _tooltip = "") : __No static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; if(!is_array(val)) return [ 0, val, val, 0, 0 ]; if(array_length(val) == 2) return [ 0, val[0], val[1], 0, 0 ]; diff --git a/scripts/node_value_surface/node_value_surface.gml b/scripts/node_value_surface/node_value_surface.gml index 204d097de..d4e5e7122 100644 --- a/scripts/node_value_surface/node_value_surface.gml +++ b/scripts/node_value_surface/node_value_surface.gml @@ -9,7 +9,7 @@ function __NodeValue_Surface(_name, _node, _value, _tooltip = "") : NodeValue(_n static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; draw_junction_index = VALUE_TYPE.surface; if(is_instanceof(val, SurfaceAtlas) || (array_valid(val) && is_instanceof(val[0], SurfaceAtlas))) diff --git a/scripts/node_value_text/node_value_text.gml b/scripts/node_value_text/node_value_text.gml index 2abbbcae8..caa43e407 100644 --- a/scripts/node_value_text/node_value_text.gml +++ b/scripts/node_value_text/node_value_text.gml @@ -7,7 +7,7 @@ function __NodeValue_Text(_name, _node, _value, _tooltip = "") : NodeValue(_name static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return val; } diff --git a/scripts/node_value_trigger/node_value_trigger.gml b/scripts/node_value_trigger/node_value_trigger.gml index 78b272cd8..d2487cfc8 100644 --- a/scripts/node_value_trigger/node_value_trigger.gml +++ b/scripts/node_value_trigger/node_value_trigger.gml @@ -7,7 +7,7 @@ function __NodeValue_Trigger(_name, _node, _value, _tooltip = "") : NodeValue(_n static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; return val; } diff --git a/scripts/node_value_vec2/node_value_vec2.gml b/scripts/node_value_vec2/node_value_vec2.gml index a1d61a105..cf301fa95 100644 --- a/scripts/node_value_vec2/node_value_vec2.gml +++ b/scripts/node_value_vec2/node_value_vec2.gml @@ -19,7 +19,7 @@ function __NodeValue_Vec2(_name, _node, _value, _data = {}) : NodeValue(_name, _ static getValue = function(_time = CURRENT_FRAME, applyUnit = true, arrIndex = 0, useCache = false, log = false) { //// Get value getValueRecursive(self.__curr_get_val, _time); var val = __curr_get_val[0]; - var nod = __curr_get_val[1]; if(!is(nod, Node)) return val; + var nod = __curr_get_val[1]; if(!is(nod, NodeValue)) return val; var typ = nod.type; if(typ != VALUE_TYPE.surface) {