diff --git a/scripts/globals/globals.gml b/scripts/globals/globals.gml index c57500802..8e8556641 100644 --- a/scripts/globals/globals.gml +++ b/scripts/globals/globals.gml @@ -42,7 +42,7 @@ LATEST_VERSION = 1_18_00_0; VERSION = 1_18_04_0; SAVE_VERSION = 1_18_02_0; - VERSION_STRING = MAC? "1.18.003m" : "1.18.4.007"; + VERSION_STRING = MAC? "1.18.003m" : "1.18.4.008"; BUILD_NUMBER = 1_18_03_1; HOTKEYS = ds_map_create(); diff --git a/scripts/node_armature_bind/node_armature_bind.gml b/scripts/node_armature_bind/node_armature_bind.gml index 1095375a8..f1820e19a 100644 --- a/scripts/node_armature_bind/node_armature_bind.gml +++ b/scripts/node_armature_bind/node_armature_bind.gml @@ -31,7 +31,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.surface, [])) + newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.atlas, [])) .rejectArrayProcess(); newOutput(2, nodeValue_Output("Bind data", self, VALUE_TYPE.struct, [])) diff --git a/scripts/node_array_split/node_array_split.gml b/scripts/node_array_split/node_array_split.gml index a6c9b1da4..27cc66ff8 100644 --- a/scripts/node_array_split/node_array_split.gml +++ b/scripts/node_array_split/node_array_split.gml @@ -26,13 +26,19 @@ function Node_Array_Split(_x, _y, _group = noone) : Node(_x, _y, _group) constru for (var i = 0; i < amo; i++) { if(i >= array_length(outputs)) - newOutput(i, nodeValue_Output($"val {i}", self, type, 0)) - + newOutput(i, nodeValue_Output($"val {i}", self, type, 0)); outputs[i].setValue(_inp[i]); } - while(array_length(outputs) > amo) - array_delete(outputs, array_length(outputs) - 1, 1); + var _rem = array_length(outputs); + for(var i = amo; i < _rem; i++) { + var _to = outputs[i].getJunctionTo(); + + for( var j = 0, m = array_length(_to); j < m; j++ ) + _to[j].removeFrom(); + } + + array_resize(outputs, amo); for (var i = 0, n = amo; i < n; i++) { outputs[i].index = i; @@ -46,10 +52,10 @@ function Node_Array_Split(_x, _y, _group = noone) : Node(_x, _y, _group) constru static preApplyDeserialize = function() { if(!struct_has(attributes, "output_amount")) return; - var _outAmo = attributes.output_amount; + var _amo = attributes.output_amount; var _ind = 0; - repeat(_outAmo) { + repeat(_amo) { newOutput(_ind, nodeValue_Output($"val {_ind}", self, VALUE_TYPE.any, 0)); _ind++; } diff --git a/scripts/node_atlas_set/node_atlas_set.gml b/scripts/node_atlas_set/node_atlas_set.gml index 2cdd4200e..f73c353ed 100644 --- a/scripts/node_atlas_set/node_atlas_set.gml +++ b/scripts/node_atlas_set/node_atlas_set.gml @@ -19,7 +19,7 @@ function Node_Atlas_Set(_x, _y, _group = noone) : Node(_x, _y, _group) construct newInput(7, nodeValue_Bool("Recalculate Position", self, true)); - newOutput(0, nodeValue_Output("Atlas", self, VALUE_TYPE.surface, noone)); + newOutput(0, nodeValue_Output("Atlas", self, VALUE_TYPE.atlas, noone)); input_display_list = [ 0, 1, 2, 3, 7, 4, 5, 6, diff --git a/scripts/node_composite/node_composite.gml b/scripts/node_composite/node_composite.gml index 8bee6b270..b1a8c23e0 100644 --- a/scripts/node_composite/node_composite.gml +++ b/scripts/node_composite/node_composite.gml @@ -12,6 +12,7 @@ enum COMPOSE_OUTPUT_SCALING { function Node_Composite(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor { name = "Composite"; + dimension_index = -1; newInput(0, nodeValue_Padding("Padding", self, [ 0, 0, 0, 0 ])); @@ -774,7 +775,7 @@ function Node_Composite(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) var base = _data[3]; var cDep = attrDepth(); - if(!is_surface(base)) return [ _outSurf, noone, [1, 1] ]; + if(!is_surface(base)) return _outData; #region dimension var ww = 0, hh = 0; @@ -784,6 +785,7 @@ function Node_Composite(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) ww = surface_get_width_safe(base); hh = surface_get_height_safe(base); break; + case COMPOSE_OUTPUT_SCALING.largest : for(var i = input_fix_len; i < array_length(_data) - data_length; i += data_length) { var _s = _data[i]; @@ -791,6 +793,7 @@ function Node_Composite(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) hh = max(hh, surface_get_height_safe(_s)); } break; + case COMPOSE_OUTPUT_SCALING.constant : ww = _dim[0]; hh = _dim[1]; @@ -856,7 +859,10 @@ function Node_Composite(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) draw_surface_safe(temp_surface[!_bg]); surface_reset_shader(); - return [ _outSurf, _atlas, [ww, hh] ]; + _outData[0] = _outSurf; + _outData[1] = _atlas; + _outData[2] = [ww, hh]; + return _outData; } static attributeSerialize = function() { diff --git a/scripts/node_grid/node_grid.gml b/scripts/node_grid/node_grid.gml index d9a37b1f8..dbf46148f 100644 --- a/scripts/node_grid/node_grid.gml +++ b/scripts/node_grid/node_grid.gml @@ -117,8 +117,20 @@ function Node_Grid(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) cons inputs[8].mappableStep(); } + static getDimension = function(_arr = 0) { + var _dim = getSingleValue( 0, _arr); + var _sam = getSingleValue( 7, _arr); + var _mod = getSingleValue(10, _arr); + var _txd = getSingleValue(25, _arr); + var _tex = _mod == 3 || _mod == 4; + + if(is_surface(_sam) && _tex && _txd) + return surface_get_dimension(_sam); + return _dim; + } + static processData = function(_outSurf, _data, _output_index, _array_index) { - var _dim = _data[ 0]; + var _dim = surface_get_dimension(_outSurf); var _pos = _data[ 1]; var _sam = _data[ 7]; var _mode = _data[10]; @@ -139,11 +151,6 @@ function Node_Grid(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) cons inputs[ 7].setVisible(_tex_mode, _tex_mode); inputs[25].setVisible(_tex_mode, _tex_mode); - var _tex_dim = is_surface(_sam) && _tex_mode && _data[25]; - if(_tex_dim) _dim = surface_get_dimension(_sam); - - _outSurf = surface_verify(_outSurf, _dim[0], _dim[1], attrDepth()); - surface_set_shader(_outSurf, sh_grid); shader_set_f("position", _pos[0] / _dim[0], _pos[1] / _dim[1]); shader_set_f("dimension", _dim[0], _dim[1]); diff --git a/scripts/node_grid_hex/node_grid_hex.gml b/scripts/node_grid_hex/node_grid_hex.gml index bec5f1638..7c9ba8ef8 100644 --- a/scripts/node_grid_hex/node_grid_hex.gml +++ b/scripts/node_grid_hex/node_grid_hex.gml @@ -86,8 +86,20 @@ function Node_Grid_Hex(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) inputs[5].mappableStep(); } + static getDimension = function(_arr = 0) { + var _dim = getSingleValue( 0, _arr); + var _sam = getSingleValue( 9, _arr); + var _mod = getSingleValue( 7, _arr); + var _txd = getSingleValue(21, _arr); + var _tex = _mod == 2 || _mod == 3; + + if(is_surface(_sam) && _tex && _txd) + return surface_get_dimension(_sam); + return _dim; + } + static processData = function(_outSurf, _data, _output_index, _array_index) { - var _dim = _data[0]; + var _dim = surface_get_dimension(_outSurf); var _pos = _data[1]; var _sam = _data[9]; var _mode = _data[7]; @@ -102,11 +114,6 @@ function Node_Grid_Hex(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) inputs[ 9].setVisible(_tex_mode, _tex_mode); inputs[21].setVisible(_tex_mode, _tex_mode); - var _tex_dim = is_surface(_sam) && _tex_mode && _data[21]; - if(_tex_dim) _dim = surface_get_dimension(_sam); - - _outSurf = surface_verify(_outSurf, _dim[0], _dim[1], attrDepth()); - surface_set_shader(_outSurf, sh_grid_hex); shader_set_f("dimension", _dim[0], _dim[1]); shader_set_f("position", _pos[0] / _dim[0], _pos[1] / _dim[1]); diff --git a/scripts/node_grid_pentagonal/node_grid_pentagonal.gml b/scripts/node_grid_pentagonal/node_grid_pentagonal.gml index 4b34a7124..d8e74136c 100644 --- a/scripts/node_grid_pentagonal/node_grid_pentagonal.gml +++ b/scripts/node_grid_pentagonal/node_grid_pentagonal.gml @@ -65,15 +65,27 @@ function Node_Grid_Pentagonal(_x, _y, _group = noone) : Node_Processor(_x, _y, _ return _hov; } - static step = function() { #region + static step = function() { inputs[2].mappableStep(); inputs[3].mappableStep(); inputs[4].mappableStep(); inputs[5].mappableStep(); - } #endregion + } + + static getDimension = function(_arr = 0) { + var _dim = getSingleValue( 0, _arr); + var _sam = getSingleValue( 7, _arr); + var _mod = getSingleValue( 8, _arr); + var _txd = getSingleValue(17, _arr); + var _tex = _mod == 2 || _mod == 3; + + if(is_surface(_sam) && _tex && _txd) + return surface_get_dimension(_sam); + return _dim; + } static processData = function(_outSurf, _data, _output_index, _array_index) { - var _dim = _data[0]; + var _dim = surface_get_dimension(_outSurf); var _pos = _data[1]; var _sam = _data[7]; var _mode = _data[8]; @@ -88,10 +100,6 @@ function Node_Grid_Pentagonal(_x, _y, _group = noone) : Node_Processor(_x, _y, _ inputs[ 7].setVisible(_tex_mode, _tex_mode); inputs[17].setVisible(_tex_mode, _tex_mode); - var _tex_dim = is_surface(_sam) && _tex_mode && _data[17]; - if(_tex_dim) _dim = surface_get_dimension(_sam); - - _outSurf = surface_verify(_outSurf, _dim[0], _dim[1], attrDepth()); surface_set_shader(_outSurf, sh_grid_pentagonal); shader_set_f("position", _pos[0] / _dim[0], _pos[1] / _dim[1]); shader_set_f("dimension", _dim[0], _dim[1]); diff --git a/scripts/node_grid_tri/node_grid_tri.gml b/scripts/node_grid_tri/node_grid_tri.gml index d257732ef..881e0f060 100644 --- a/scripts/node_grid_tri/node_grid_tri.gml +++ b/scripts/node_grid_tri/node_grid_tri.gml @@ -86,8 +86,20 @@ function Node_Grid_Tri(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) inputs[5].mappableStep(); } + static getDimension = function(_arr = 0) { + var _dim = getSingleValue( 0, _arr); + var _sam = getSingleValue( 7, _arr); + var _mod = getSingleValue( 8, _arr); + var _txd = getSingleValue(21, _arr); + var _tex = _mod == 3 || _mod == 4; + + if(is_surface(_sam) && _tex && _txd) + return surface_get_dimension(_sam); + return _dim; + } + static processData = function(_outSurf, _data, _output_index, _array_index) { - var _dim = _data[0]; + var _dim = surface_get_dimension(_outSurf); var _pos = _data[1]; var _sam = _data[7]; var _mode = _data[8]; @@ -104,11 +116,6 @@ function Node_Grid_Tri(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) inputs[ 7].setVisible(_tex_mode, _tex_mode); inputs[21].setVisible(_tex_mode, _tex_mode); - var _tex_dim = is_surface(_sam) && _tex_mode && _data[21]; - if(_tex_dim) _dim = surface_get_dimension(_sam); - - _outSurf = surface_verify(_outSurf, _dim[0], _dim[1], attrDepth()); - surface_set_shader(_outSurf, sh_grid_tri); shader_set_f("position", _pos[0] / _dim[0], _pos[1] / _dim[1]); shader_set_f("dimension", _dim[0], _dim[1]); diff --git a/scripts/node_image_grid/node_image_grid.gml b/scripts/node_image_grid/node_image_grid.gml index 94024cacf..53defa927 100644 --- a/scripts/node_image_grid/node_image_grid.gml +++ b/scripts/node_image_grid/node_image_grid.gml @@ -17,7 +17,7 @@ function Node_Image_Grid(_x, _y, _group = noone) : Node(_x, _y, _group) construc newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.surface, [])); + newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.atlas, [])); temp_surface = [ noone, noone ]; diff --git a/scripts/node_image_sheet/node_image_sheet.gml b/scripts/node_image_sheet/node_image_sheet.gml index 5c6437a38..a658ccf2e 100644 --- a/scripts/node_image_sheet/node_image_sheet.gml +++ b/scripts/node_image_sheet/node_image_sheet.gml @@ -66,7 +66,7 @@ function Node_Image_Sheet(_x, _y, _group = noone) : Node(_x, _y, _group) constru newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas Data", self, VALUE_TYPE.surface, [])) + newOutput(1, nodeValue_Output("Atlas Data", self, VALUE_TYPE.atlas, [])) .setArrayDepth(1); attribute_surface_depth(); diff --git a/scripts/node_pack_sprites/node_pack_sprites.gml b/scripts/node_pack_sprites/node_pack_sprites.gml index dfe5c2f13..3cd319c02 100644 --- a/scripts/node_pack_sprites/node_pack_sprites.gml +++ b/scripts/node_pack_sprites/node_pack_sprites.gml @@ -13,7 +13,7 @@ function Node_Pack_Sprites(_x, _y, _group = noone) : Node(_x, _y, _group) constr newOutput(0, nodeValue_Output("Packed image", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.surface, [])); + newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.atlas, [])); input_display_list = [ 0, 4, 1, 2, 3 ]; diff --git a/scripts/node_processor/node_processor.gml b/scripts/node_processor/node_processor.gml index 04e7fb1f2..f91c01a21 100644 --- a/scripts/node_processor/node_processor.gml +++ b/scripts/node_processor/node_processor.gml @@ -88,6 +88,7 @@ function Node_Processor(_x, _y, _group = noone) : Node(_x, _y, _group) construct var _atlas = false; var _pAtl = noone; var _data = []; + var _dep = attrDepth(); if(process_amount == 1) { // render single data if(_output.type == VALUE_TYPE.d3object) //passing 3D vertex call @@ -112,6 +113,7 @@ function Node_Processor(_x, _y, _group = noone) : Node(_x, _y, _group) construct _sh = surface_get_height_safe(surf); } else return noone; + } else if(is_array(surf)) { _sw = array_safe_get_fast(surf, 0, 1); _sh = array_safe_get_fast(surf, 1, 1); @@ -120,10 +122,10 @@ function Node_Processor(_x, _y, _group = noone) : Node(_x, _y, _group) construct if(is_instanceof(_out, SurfaceAtlas)) { if(manage_atlas) { surface_free_safe(_out.getSurface()) - _out = surface_verify(_out.getSurface(), _sw, _sh, attrDepth()); + _out = surface_verify(_out.getSurface(), _sw, _sh, _dep); } } else - _out = surface_verify(_out, _sw, _sh, attrDepth()); + _out = surface_verify(_out, _sw, _sh, _dep); } } @@ -184,11 +186,11 @@ function Node_Processor(_x, _y, _group = noone) : Node(_x, _y, _group) construct if(is_instanceof(_out[l], SurfaceAtlas)) { if(manage_atlas) { surface_free_safe(_out[l].surface.surface) - _out[l] = surface_verify(_out[l].getSurface(), _sw, _sh, attrDepth()); + _out[l] = surface_verify(_out[l].getSurface(), _sw, _sh, _dep); } } else - _out[l] = surface_verify(_out[l], _sw, _sh, attrDepth()); + _out[l] = surface_verify(_out[l], _sw, _sh, _dep); } } #endregion @@ -242,9 +244,10 @@ function Node_Processor(_x, _y, _group = noone) : Node(_x, _y, _group) construct if(dimension_index > -1) { var _dim = getDimension(); - for(var i = 0; i < _os; i++) { - if(outputs[i].type == VALUE_TYPE.surface) _out[i] = surface_verify(_out[i], _dim[0], _dim[1], _dep); + if(outputs[i].type != VALUE_TYPE.surface) continue; + + _out[i] = surface_verify(_out[i], _dim[0], _dim[1], _dep); } } @@ -280,13 +283,16 @@ function Node_Processor(_x, _y, _group = noone) : Node(_x, _y, _group) construct if(l == 0 || l == preview_index) current_data = _inputs; - var _dim = getDimension(l); var _outa = array_create(_os); - + var _dim = getDimension(l); + for(var i = 0; i < _os; i++) { _outa[i] = array_safe_get(_out[i], l); - if(outputs[i].type == VALUE_TYPE.surface) - _outa[i] = surface_verify(_outa[i], _dim[0], _dim[1], _dep); + + if(dimension_index == -1) continue; + if(outputs[i].type != VALUE_TYPE.surface) continue; + + _outa[i] = surface_verify(_outa[i], _dim[0], _dim[1], _dep); } if(_os == 1) { diff --git a/scripts/node_render_sprite_sheet/node_render_sprite_sheet.gml b/scripts/node_render_sprite_sheet/node_render_sprite_sheet.gml index f01f548b1..32dd7cd9d 100644 --- a/scripts/node_render_sprite_sheet/node_render_sprite_sheet.gml +++ b/scripts/node_render_sprite_sheet/node_render_sprite_sheet.gml @@ -49,7 +49,7 @@ function Node_Render_Sprite_Sheet(_x, _y, _group = noone) : Node(_x, _y, _group) newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas Data", self, VALUE_TYPE.surface, [])); + newOutput(1, nodeValue_Output("Atlas Data", self, VALUE_TYPE.atlas, [])); input_display_list = [ ["Surfaces", false], 0, 1, 2, diff --git a/scripts/node_scatter/node_scatter.gml b/scripts/node_scatter/node_scatter.gml index fc2ec1cc7..9b77567c6 100644 --- a/scripts/node_scatter/node_scatter.gml +++ b/scripts/node_scatter/node_scatter.gml @@ -129,7 +129,7 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.surface, [])) + newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.atlas, [])) .setVisible(false) .rejectArrayProcess(); @@ -146,8 +146,8 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c attribute_surface_depth(); attribute_interpolation(); - surface_size_map = ds_map_create(); - surface_valid_map = ds_map_create(); + surface_size_map = {}; + surface_valid_map = {}; scatter_data = []; scatter_map = noone; @@ -294,8 +294,6 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c var _in_w, _in_h; - var _outSurf = _outData[0]; - var vSca = array_exists(useV, "Scale"); var vRot = array_exists(useV, "Rotation"); var vCol = array_exists(useV, "Color"); @@ -304,16 +302,16 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c if(surfArray && array_empty(_inSurf)) return _outData; #region cache value - ds_map_clear(surface_size_map); - ds_map_clear(surface_valid_map); + surface_size_map = {}; + surface_valid_map = {}; if(!surfArray) { - surface_size_map[? _inSurf] = surface_get_dimension(_inSurf); - surface_valid_map[? _inSurf] = is_surface(_inSurf); + surface_size_map[$ _inSurf] = surface_get_dimension(_inSurf); + surface_valid_map[$ _inSurf] = is_surface(_inSurf); } else { for( var i = 0, n = array_length(_inSurf); i < n; i++ ) { - surface_size_map[? _inSurf[i]] = surface_get_dimension(_inSurf[i]); - surface_valid_map[? _inSurf[i]] = is_surface(_inSurf[i]); + surface_size_map[$ _inSurf[i]] = surface_get_dimension(_inSurf[i]); + surface_valid_map[$ _inSurf[i]] = is_surface(_inSurf[i]); } } @@ -354,7 +352,7 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c } var _sed = seed; - var _sct = array_create(_amount); + var _sct = array_verify(_outData[1], _amount); var _sct_len = 0; var _arrLen = array_safe_length(_inSurf); @@ -372,12 +370,13 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c var _clrSin = color.evalFast(0); var _useAtl = outputs[1].visible; - var _datLen = array_length(scatter_data); var _p = [ 0, 0 ]; #endregion + var _outSurf = _outData[0]; + surface_set_target(_outSurf); gpu_set_tex_filter(getAttribute("interpolate")); @@ -408,7 +407,7 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c var _scx = _scaUniX? _scale[0] : random_range_seed(_scale[0], _scale[1], _sed++); var _scy = _scaUniY? _scale[2] : random_range_seed(_scale[2], _scale[3], _sed++); - switch(_dist) { #region position + switch(_dist) { // position case NODE_SCATTER_DIST.area : if(_scat == 0) { var _axc = _area[AREA_INDEX.center_x]; @@ -513,8 +512,7 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c _y = random_range_seed(0, _dim[1], _sed++); } break; - - } #endregion + } if(_wigX) _x += random_range_seed(posWig[0], posWig[1], _sed++); if(_wigY) _y += random_range_seed(posWig[2], posWig[3], _sed++); @@ -585,9 +583,9 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c surf = array_safe_get_fast(_inSurf, ind, 0); } - if(surf == 0 || !surface_valid_map[? surf]) continue; + if(surf == 0 || !surface_valid_map[$ surf]) continue; - var dim = surface_size_map[? surf]; + var dim = surface_size_map[$ surf]; var sw = dim[0]; var sh = dim[1]; @@ -683,6 +681,9 @@ function Node_Scatter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c scatter_data = _sct; - return [ _outSurf, _sct ]; + _outData[0] = _outSurf; + _outData[1] = _sct; + + return _outData; } } \ No newline at end of file diff --git a/scripts/node_seperate_shape/node_seperate_shape.gml b/scripts/node_seperate_shape/node_seperate_shape.gml index 9eb3482a8..c0779dc65 100644 --- a/scripts/node_seperate_shape/node_seperate_shape.gml +++ b/scripts/node_seperate_shape/node_seperate_shape.gml @@ -21,7 +21,7 @@ function Node_Seperate_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) cons newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas", self, VALUE_TYPE.surface, [])); + newOutput(1, nodeValue_Output("Atlas", self, VALUE_TYPE.atlas, [])); input_display_list = [ ["Shape", false], 0, 5, 1, 4, diff --git a/scripts/node_stack/node_stack.gml b/scripts/node_stack/node_stack.gml index 24654f144..f958d4161 100644 --- a/scripts/node_stack/node_stack.gml +++ b/scripts/node_stack/node_stack.gml @@ -17,7 +17,7 @@ function Node_Stack(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone)); - newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.surface, [])); + newOutput(1, nodeValue_Output("Atlas data", self, VALUE_TYPE.atlas, [])); temp_surface = [ noone, noone ]; diff --git a/scripts/node_transform/node_transform.gml b/scripts/node_transform/node_transform.gml index fdc152c7c..407f69ef1 100644 --- a/scripts/node_transform/node_transform.gml +++ b/scripts/node_transform/node_transform.gml @@ -7,6 +7,7 @@ enum OUTPUT_SCALING { function Node_Transform(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor { name = "Transform"; + dimension_index = -1; newInput(0, nodeValue_Surface("Surface in", self));