morph path
|
@ -240,12 +240,12 @@
|
||||||
{"name":"node","order":5,"path":"folders/shader/UI/node.yy",},
|
{"name":"node","order":5,"path":"folders/shader/UI/node.yy",},
|
||||||
{"name":"palette mixer","order":2,"path":"folders/shader/UI/palette mixer.yy",},
|
{"name":"palette mixer","order":2,"path":"folders/shader/UI/palette mixer.yy",},
|
||||||
{"name":"sprites","order":336,"path":"folders/sprites.yy",},
|
{"name":"sprites","order":336,"path":"folders/sprites.yy",},
|
||||||
{"name":"gameframe","order":1,"path":"folders/sprites/gameframe.yy",},
|
{"name":"bs","order":1,"path":"folders/sprites/bs.yy",},
|
||||||
{"name":"misc","order":2,"path":"folders/sprites/misc.yy",},
|
{"name":"gameframe","order":2,"path":"folders/sprites/gameframe.yy",},
|
||||||
{"name":"nodes","order":3,"path":"folders/sprites/nodes.yy",},
|
{"name":"misc","order":3,"path":"folders/sprites/misc.yy",},
|
||||||
{"name":"profiler","order":5,"path":"folders/sprites/profiler.yy",},
|
{"name":"nodes","order":4,"path":"folders/sprites/nodes.yy",},
|
||||||
{"name":"texture","order":4,"path":"folders/sprites/texture.yy",},
|
{"name":"profiler","order":6,"path":"folders/sprites/profiler.yy",},
|
||||||
{"name":"theme","order":6,"path":"folders/sprites/theme.yy",},
|
{"name":"texture","order":5,"path":"folders/sprites/texture.yy",},
|
||||||
{"name":"font","order":9,"path":"folders/sprites/theme/font.yy",},
|
{"name":"font","order":9,"path":"folders/sprites/theme/font.yy",},
|
||||||
{"name":"inspector","order":1,"path":"folders/sprites/theme/inspector.yy",},
|
{"name":"inspector","order":1,"path":"folders/sprites/theme/inspector.yy",},
|
||||||
{"name":"meta","order":2,"path":"folders/sprites/theme/meta.yy",},
|
{"name":"meta","order":2,"path":"folders/sprites/theme/meta.yy",},
|
||||||
|
@ -258,7 +258,11 @@
|
||||||
{"name":"UI","order":7,"path":"folders/sprites/theme/UI.yy",},
|
{"name":"UI","order":7,"path":"folders/sprites/theme/UI.yy",},
|
||||||
{"name":"widget","order":8,"path":"folders/sprites/theme/widget.yy",},
|
{"name":"widget","order":8,"path":"folders/sprites/theme/widget.yy",},
|
||||||
{"name":"widgets","order":334,"path":"folders/widgets.yy",},
|
{"name":"widgets","order":334,"path":"folders/widgets.yy",},
|
||||||
{"name":"object","order":18,"path":"folders/widgets/object.yy",},
|
{"name":"button","order":1,"path":"folders/widgets/button.yy",},
|
||||||
|
{"name":"object","order":5,"path":"folders/widgets/object.yy",},
|
||||||
|
{"name":"rotator","order":2,"path":"folders/widgets/rotator.yy",},
|
||||||
|
{"name":"sliders","order":3,"path":"folders/widgets/sliders.yy",},
|
||||||
|
{"name":"text","order":4,"path":"folders/widgets/text.yy",},
|
||||||
],
|
],
|
||||||
"ResourceOrderSettings":[
|
"ResourceOrderSettings":[
|
||||||
{"name":"ac_disappear","order":2,"path":"animcurves/ac_disappear/ac_disappear.yy",},
|
{"name":"ac_disappear","order":2,"path":"animcurves/ac_disappear/ac_disappear.yy",},
|
||||||
|
@ -510,8 +514,8 @@
|
||||||
{"name":"canvas_tool_selection","order":7,"path":"scripts/canvas_tool_selection/canvas_tool_selection.yy",},
|
{"name":"canvas_tool_selection","order":7,"path":"scripts/canvas_tool_selection/canvas_tool_selection.yy",},
|
||||||
{"name":"canvas_tool_skew","order":6,"path":"scripts/canvas_tool_skew/canvas_tool_skew.yy",},
|
{"name":"canvas_tool_skew","order":6,"path":"scripts/canvas_tool_skew/canvas_tool_skew.yy",},
|
||||||
{"name":"canvas_tool_with_selector","order":5,"path":"scripts/canvas_tool_with_selector/canvas_tool_with_selector.yy",},
|
{"name":"canvas_tool_with_selector","order":5,"path":"scripts/canvas_tool_with_selector/canvas_tool_with_selector.yy",},
|
||||||
{"name":"checkboxActive","order":11,"path":"scripts/checkboxActive/checkboxActive.yy",},
|
{"name":"checkboxActive","order":13,"path":"scripts/checkboxActive/checkboxActive.yy",},
|
||||||
{"name":"checkboxGroup","order":6,"path":"scripts/checkboxGroup/checkboxGroup.yy",},
|
{"name":"checkboxGroup","order":11,"path":"scripts/checkboxGroup/checkboxGroup.yy",},
|
||||||
{"name":"collection_data","order":9,"path":"scripts/collection_data/collection_data.yy",},
|
{"name":"collection_data","order":9,"path":"scripts/collection_data/collection_data.yy",},
|
||||||
{"name":"color_function","order":9,"path":"scripts/color_function/color_function.yy",},
|
{"name":"color_function","order":9,"path":"scripts/color_function/color_function.yy",},
|
||||||
{"name":"color_loader","order":13,"path":"scripts/color_loader/color_loader.yy",},
|
{"name":"color_loader","order":13,"path":"scripts/color_loader/color_loader.yy",},
|
||||||
|
@ -523,7 +527,7 @@
|
||||||
{"name":"cross_product","order":3,"path":"scripts/cross_product/cross_product.yy",},
|
{"name":"cross_product","order":3,"path":"scripts/cross_product/cross_product.yy",},
|
||||||
{"name":"curve_bounce_function","order":1,"path":"scripts/curve_bounce_function/curve_bounce_function.yy",},
|
{"name":"curve_bounce_function","order":1,"path":"scripts/curve_bounce_function/curve_bounce_function.yy",},
|
||||||
{"name":"curve_damping_function","order":2,"path":"scripts/curve_damping_function/curve_damping_function.yy",},
|
{"name":"curve_damping_function","order":2,"path":"scripts/curve_damping_function/curve_damping_function.yy",},
|
||||||
{"name":"curveBox","order":1,"path":"scripts/curveBox/curveBox.yy",},
|
{"name":"curveBox","order":6,"path":"scripts/curveBox/curveBox.yy",},
|
||||||
{"name":"d3d_bbox","order":8,"path":"scripts/d3d_bbox/d3d_bbox.yy",},
|
{"name":"d3d_bbox","order":8,"path":"scripts/d3d_bbox/d3d_bbox.yy",},
|
||||||
{"name":"d3d_camera_object","order":1,"path":"scripts/d3d_camera_object/d3d_camera_object.yy",},
|
{"name":"d3d_camera_object","order":1,"path":"scripts/d3d_camera_object/d3d_camera_object.yy",},
|
||||||
{"name":"d3d_cone","order":5,"path":"scripts/d3d_cone/d3d_cone.yy",},
|
{"name":"d3d_cone","order":5,"path":"scripts/d3d_cone/d3d_cone.yy",},
|
||||||
|
@ -625,7 +629,7 @@
|
||||||
{"name":"font_data","order":10,"path":"scripts/font_data/font_data.yy",},
|
{"name":"font_data","order":10,"path":"scripts/font_data/font_data.yy",},
|
||||||
{"name":"font_loader","order":8,"path":"scripts/font_loader/font_loader.yy",},
|
{"name":"font_loader","order":8,"path":"scripts/font_loader/font_loader.yy",},
|
||||||
{"name":"font_sprite_loader","order":10,"path":"scripts/font_sprite_loader/font_sprite_loader.yy",},
|
{"name":"font_sprite_loader","order":10,"path":"scripts/font_sprite_loader/font_sprite_loader.yy",},
|
||||||
{"name":"fontScrollBox","order":13,"path":"scripts/fontScrollBox/fontScrollBox.yy",},
|
{"name":"fontScrollBox","order":14,"path":"scripts/fontScrollBox/fontScrollBox.yy",},
|
||||||
{"name":"FriebaseREST_Firestore_urlUpdateMask","order":20,"path":"scripts/FriebaseREST_Firestore_urlUpdateMask/FriebaseREST_Firestore_urlUpdateMask.yy",},
|
{"name":"FriebaseREST_Firestore_urlUpdateMask","order":20,"path":"scripts/FriebaseREST_Firestore_urlUpdateMask/FriebaseREST_Firestore_urlUpdateMask.yy",},
|
||||||
{"name":"function_register","order":2,"path":"scripts/function_register/function_register.yy",},
|
{"name":"function_register","order":2,"path":"scripts/function_register/function_register.yy",},
|
||||||
{"name":"fx_controller","order":1,"path":"scripts/fx_controller/fx_controller.yy",},
|
{"name":"fx_controller","order":1,"path":"scripts/fx_controller/fx_controller.yy",},
|
||||||
|
@ -654,7 +658,7 @@
|
||||||
{"name":"luaHighlight","order":1,"path":"scripts/luaHighlight/luaHighlight.yy",},
|
{"name":"luaHighlight","order":1,"path":"scripts/luaHighlight/luaHighlight.yy",},
|
||||||
{"name":"mac_window_step","order":1,"path":"scripts/mac_window_step/mac_window_step.yy",},
|
{"name":"mac_window_step","order":1,"path":"scripts/mac_window_step/mac_window_step.yy",},
|
||||||
{"name":"mask_function","order":1,"path":"scripts/mask_function/mask_function.yy",},
|
{"name":"mask_function","order":1,"path":"scripts/mask_function/mask_function.yy",},
|
||||||
{"name":"materialBox","order":14,"path":"scripts/materialBox/materialBox.yy",},
|
{"name":"materialBox","order":15,"path":"scripts/materialBox/materialBox.yy",},
|
||||||
{"name":"math_function","order":3,"path":"scripts/math_function/math_function.yy",},
|
{"name":"math_function","order":3,"path":"scripts/math_function/math_function.yy",},
|
||||||
{"name":"matrixGrid","order":6,"path":"scripts/matrixGrid/matrixGrid.yy",},
|
{"name":"matrixGrid","order":6,"path":"scripts/matrixGrid/matrixGrid.yy",},
|
||||||
{"name":"meshBox","order":3,"path":"scripts/meshBox/meshBox.yy",},
|
{"name":"meshBox","order":3,"path":"scripts/meshBox/meshBox.yy",},
|
||||||
|
@ -1272,7 +1276,7 @@
|
||||||
{"name":"number_function","order":14,"path":"scripts/number_function/number_function.yy",},
|
{"name":"number_function","order":14,"path":"scripts/number_function/number_function.yy",},
|
||||||
{"name":"obj_reader","order":2,"path":"scripts/obj_reader/obj_reader.yy",},
|
{"name":"obj_reader","order":2,"path":"scripts/obj_reader/obj_reader.yy",},
|
||||||
{"name":"okhsl_function","order":18,"path":"scripts/okhsl_function/okhsl_function.yy",},
|
{"name":"okhsl_function","order":18,"path":"scripts/okhsl_function/okhsl_function.yy",},
|
||||||
{"name":"outputBox","order":15,"path":"scripts/outputBox/outputBox.yy",},
|
{"name":"outputBox","order":16,"path":"scripts/outputBox/outputBox.yy",},
|
||||||
{"name":"pack_bottom_left","order":2,"path":"scripts/pack_bottom_left/pack_bottom_left.yy",},
|
{"name":"pack_bottom_left","order":2,"path":"scripts/pack_bottom_left/pack_bottom_left.yy",},
|
||||||
{"name":"pack_corner","order":3,"path":"scripts/pack_corner/pack_corner.yy",},
|
{"name":"pack_corner","order":3,"path":"scripts/pack_corner/pack_corner.yy",},
|
||||||
{"name":"pack_shelf","order":1,"path":"scripts/pack_shelf/pack_shelf.yy",},
|
{"name":"pack_shelf","order":1,"path":"scripts/pack_shelf/pack_shelf.yy",},
|
||||||
|
@ -1359,8 +1363,8 @@
|
||||||
{"name":"safe_operation","order":6,"path":"scripts/safe_operation/safe_operation.yy",},
|
{"name":"safe_operation","order":6,"path":"scripts/safe_operation/safe_operation.yy",},
|
||||||
{"name":"sample_projects","order":6,"path":"scripts/sample_projects/sample_projects.yy",},
|
{"name":"sample_projects","order":6,"path":"scripts/sample_projects/sample_projects.yy",},
|
||||||
{"name":"save_function","order":1,"path":"scripts/save_function/save_function.yy",},
|
{"name":"save_function","order":1,"path":"scripts/save_function/save_function.yy",},
|
||||||
{"name":"scrollBox","order":2,"path":"scripts/scrollBox/scrollBox.yy",},
|
{"name":"scrollBox","order":7,"path":"scripts/scrollBox/scrollBox.yy",},
|
||||||
{"name":"scrollPane","order":3,"path":"scripts/scrollPane/scrollPane.yy",},
|
{"name":"scrollPane","order":8,"path":"scripts/scrollPane/scrollPane.yy",},
|
||||||
{"name":"shell_functions","order":42,"path":"scripts/shell_functions/shell_functions.yy",},
|
{"name":"shell_functions","order":42,"path":"scripts/shell_functions/shell_functions.yy",},
|
||||||
{"name":"sliderRange","order":2,"path":"scripts/sliderRange/sliderRange.yy",},
|
{"name":"sliderRange","order":2,"path":"scripts/sliderRange/sliderRange.yy",},
|
||||||
{"name":"SnapBufferWriteXML","order":1,"path":"scripts/SnapBufferWriteXML/SnapBufferWriteXML.yy",},
|
{"name":"SnapBufferWriteXML","order":1,"path":"scripts/SnapBufferWriteXML/SnapBufferWriteXML.yy",},
|
||||||
|
@ -1379,8 +1383,8 @@
|
||||||
{"name":"surface_draw_functions","order":6,"path":"scripts/surface_draw_functions/surface_draw_functions.yy",},
|
{"name":"surface_draw_functions","order":6,"path":"scripts/surface_draw_functions/surface_draw_functions.yy",},
|
||||||
{"name":"surface_functions","order":4,"path":"scripts/surface_functions/surface_functions.yy",},
|
{"name":"surface_functions","order":4,"path":"scripts/surface_functions/surface_functions.yy",},
|
||||||
{"name":"surface_get_palette","order":2,"path":"scripts/surface_get_palette/surface_get_palette.yy",},
|
{"name":"surface_get_palette","order":2,"path":"scripts/surface_get_palette/surface_get_palette.yy",},
|
||||||
{"name":"surfaceBox","order":4,"path":"scripts/surfaceBox/surfaceBox.yy",},
|
{"name":"surfaceBox","order":9,"path":"scripts/surfaceBox/surfaceBox.yy",},
|
||||||
{"name":"surfaceDynaBox","order":19,"path":"scripts/surfaceDynaBox/surfaceDynaBox.yy",},
|
{"name":"surfaceDynaBox","order":17,"path":"scripts/surfaceDynaBox/surfaceDynaBox.yy",},
|
||||||
{"name":"svg_objects","order":1,"path":"scripts/svg_objects/svg_objects.yy",},
|
{"name":"svg_objects","order":1,"path":"scripts/svg_objects/svg_objects.yy",},
|
||||||
{"name":"text_file","order":5,"path":"scripts/text_file/text_file.yy",},
|
{"name":"text_file","order":5,"path":"scripts/text_file/text_file.yy",},
|
||||||
{"name":"textArrayBox","order":1,"path":"scripts/textArrayBox/textArrayBox.yy",},
|
{"name":"textArrayBox","order":1,"path":"scripts/textArrayBox/textArrayBox.yy",},
|
||||||
|
@ -1395,7 +1399,7 @@
|
||||||
{"name":"tilesetBox","order":1,"path":"scripts/tilesetBox/tilesetBox.yy",},
|
{"name":"tilesetBox","order":1,"path":"scripts/tilesetBox/tilesetBox.yy",},
|
||||||
{"name":"time_source","order":43,"path":"scripts/time_source/time_source.yy",},
|
{"name":"time_source","order":43,"path":"scripts/time_source/time_source.yy",},
|
||||||
{"name":"timeline_data","order":18,"path":"scripts/timeline_data/timeline_data.yy",},
|
{"name":"timeline_data","order":18,"path":"scripts/timeline_data/timeline_data.yy",},
|
||||||
{"name":"toggleGroup","order":7,"path":"scripts/toggleGroup/toggleGroup.yy",},
|
{"name":"toggleGroup","order":12,"path":"scripts/toggleGroup/toggleGroup.yy",},
|
||||||
{"name":"tooltip_hotkey","order":2,"path":"scripts/tooltip_hotkey/tooltip_hotkey.yy",},
|
{"name":"tooltip_hotkey","order":2,"path":"scripts/tooltip_hotkey/tooltip_hotkey.yy",},
|
||||||
{"name":"tooltip_recent_files","order":3,"path":"scripts/tooltip_recent_files/tooltip_recent_files.yy",},
|
{"name":"tooltip_recent_files","order":3,"path":"scripts/tooltip_recent_files/tooltip_recent_files.yy",},
|
||||||
{"name":"tooltip_selector_object","order":1,"path":"scripts/tooltip_selector_object/tooltip_selector_object.yy",},
|
{"name":"tooltip_selector_object","order":1,"path":"scripts/tooltip_selector_object/tooltip_selector_object.yy",},
|
||||||
|
@ -1413,7 +1417,7 @@
|
||||||
{"name":"vectorRangeBox","order":11,"path":"scripts/vectorRangeBox/vectorRangeBox.yy",},
|
{"name":"vectorRangeBox","order":11,"path":"scripts/vectorRangeBox/vectorRangeBox.yy",},
|
||||||
{"name":"version_checker","order":11,"path":"scripts/version_checker/version_checker.yy",},
|
{"name":"version_checker","order":11,"path":"scripts/version_checker/version_checker.yy",},
|
||||||
{"name":"wav_file_object","order":2,"path":"scripts/wav_file_object/wav_file_object.yy",},
|
{"name":"wav_file_object","order":2,"path":"scripts/wav_file_object/wav_file_object.yy",},
|
||||||
{"name":"widget","order":5,"path":"scripts/widget/widget.yy",},
|
{"name":"widget","order":10,"path":"scripts/widget/widget.yy",},
|
||||||
{"name":"window_functions","order":2,"path":"scripts/window_functions/window_functions.yy",},
|
{"name":"window_functions","order":2,"path":"scripts/window_functions/window_functions.yy",},
|
||||||
{"name":"winwin_extras","order":6,"path":"scripts/winwin_extras/winwin_extras.yy",},
|
{"name":"winwin_extras","order":6,"path":"scripts/winwin_extras/winwin_extras.yy",},
|
||||||
{"name":"winwin_utils","order":7,"path":"scripts/winwin_utils/winwin_utils.yy",},
|
{"name":"winwin_utils","order":7,"path":"scripts/winwin_utils/winwin_utils.yy",},
|
||||||
|
@ -2045,7 +2049,7 @@
|
||||||
{"name":"s_info","order":118,"path":"sprites/s_info/s_info.yy",},
|
{"name":"s_info","order":118,"path":"sprites/s_info/s_info.yy",},
|
||||||
{"name":"s_inspector_channel","order":1,"path":"sprites/s_inspector_channel/s_inspector_channel.yy",},
|
{"name":"s_inspector_channel","order":1,"path":"sprites/s_inspector_channel/s_inspector_channel.yy",},
|
||||||
{"name":"s_inspector_checkbox","order":2,"path":"sprites/s_inspector_checkbox/s_inspector_checkbox.yy",},
|
{"name":"s_inspector_checkbox","order":2,"path":"sprites/s_inspector_checkbox/s_inspector_checkbox.yy",},
|
||||||
{"name":"s_inspector_corner","order":3,"path":"sprites/s_inspector_corner/s_inspector_corner.yy",},
|
{"name":"s_inspector_corner","order":28,"path":"sprites/s_inspector_corner/s_inspector_corner.yy",},
|
||||||
{"name":"s_inspector_curve_presets","order":4,"path":"sprites/s_inspector_curve_presets/s_inspector_curve_presets.yy",},
|
{"name":"s_inspector_curve_presets","order":4,"path":"sprites/s_inspector_curve_presets/s_inspector_curve_presets.yy",},
|
||||||
{"name":"s_inspector_direction","order":5,"path":"sprites/s_inspector_direction/s_inspector_direction.yy",},
|
{"name":"s_inspector_direction","order":5,"path":"sprites/s_inspector_direction/s_inspector_direction.yy",},
|
||||||
{"name":"s_inspector_draw_line","order":6,"path":"sprites/s_inspector_draw_line/s_inspector_draw_line.yy",},
|
{"name":"s_inspector_draw_line","order":6,"path":"sprites/s_inspector_draw_line/s_inspector_draw_line.yy",},
|
||||||
|
|
Before Width: | Height: | Size: 80 KiB After Width: | Height: | Size: 81 KiB |
|
@ -13,70 +13,70 @@
|
||||||
"glyphOperations":0,
|
"glyphOperations":0,
|
||||||
"glyphs":{
|
"glyphs":{
|
||||||
"32":{"character":32,"h":68,"offset":0,"shift":11,"w":11,"x":2,"y":2,},
|
"32":{"character":32,"h":68,"offset":0,"shift":11,"w":11,"x":2,"y":2,},
|
||||||
"33":{"character":33,"h":68,"offset":2,"shift":12,"w":24,"x":623,"y":142,},
|
"33":{"character":33,"h":68,"offset":2,"shift":12,"w":24,"x":625,"y":142,},
|
||||||
"34":{"character":34,"h":68,"offset":2,"shift":20,"w":32,"x":589,"y":142,},
|
"34":{"character":34,"h":68,"offset":2,"shift":20,"w":32,"x":591,"y":142,},
|
||||||
"35":{"character":35,"h":68,"offset":0,"shift":28,"w":43,"x":544,"y":142,},
|
"35":{"character":35,"h":68,"offset":0,"shift":28,"w":43,"x":546,"y":142,},
|
||||||
"36":{"character":36,"h":68,"offset":1,"shift":24,"w":38,"x":504,"y":142,},
|
"36":{"character":36,"h":68,"offset":1,"shift":25,"w":38,"x":506,"y":142,},
|
||||||
"37":{"character":37,"h":68,"offset":1,"shift":38,"w":53,"x":449,"y":142,},
|
"37":{"character":37,"h":68,"offset":1,"shift":39,"w":53,"x":451,"y":142,},
|
||||||
"38":{"character":38,"h":68,"offset":1,"shift":32,"w":47,"x":400,"y":142,},
|
"38":{"character":38,"h":68,"offset":1,"shift":32,"w":48,"x":401,"y":142,},
|
||||||
"39":{"character":39,"h":68,"offset":2,"shift":11,"w":23,"x":375,"y":142,},
|
"39":{"character":39,"h":68,"offset":2,"shift":11,"w":23,"x":376,"y":142,},
|
||||||
"40":{"character":40,"h":68,"offset":1,"shift":14,"w":29,"x":344,"y":142,},
|
"40":{"character":40,"h":68,"offset":1,"shift":15,"w":29,"x":345,"y":142,},
|
||||||
"41":{"character":41,"h":68,"offset":1,"shift":14,"w":28,"x":314,"y":142,},
|
"41":{"character":41,"h":68,"offset":1,"shift":15,"w":28,"x":315,"y":142,},
|
||||||
"42":{"character":42,"h":68,"offset":1,"shift":23,"w":37,"x":649,"y":142,},
|
"42":{"character":42,"h":68,"offset":1,"shift":23,"w":38,"x":651,"y":142,},
|
||||||
"43":{"character":43,"h":68,"offset":1,"shift":24,"w":38,"x":274,"y":142,},
|
"43":{"character":43,"h":68,"offset":1,"shift":25,"w":38,"x":275,"y":142,},
|
||||||
"44":{"character":44,"h":68,"offset":1,"shift":12,"w":25,"x":208,"y":142,},
|
"44":{"character":44,"h":68,"offset":1,"shift":12,"w":25,"x":209,"y":142,},
|
||||||
"45":{"character":45,"h":68,"offset":1,"shift":14,"w":28,"x":178,"y":142,},
|
"45":{"character":45,"h":68,"offset":1,"shift":14,"w":28,"x":179,"y":142,},
|
||||||
"46":{"character":46,"h":68,"offset":2,"shift":12,"w":24,"x":152,"y":142,},
|
"46":{"character":46,"h":68,"offset":2,"shift":12,"w":24,"x":153,"y":142,},
|
||||||
"47":{"character":47,"h":68,"offset":0,"shift":18,"w":34,"x":116,"y":142,},
|
"47":{"character":47,"h":68,"offset":0,"shift":18,"w":34,"x":117,"y":142,},
|
||||||
"48":{"character":48,"h":68,"offset":1,"shift":24,"w":38,"x":76,"y":142,},
|
"48":{"character":48,"h":68,"offset":1,"shift":25,"w":38,"x":77,"y":142,},
|
||||||
"49":{"character":49,"h":68,"offset":2,"shift":24,"w":32,"x":42,"y":142,},
|
"49":{"character":49,"h":68,"offset":2,"shift":25,"w":32,"x":43,"y":142,},
|
||||||
"50":{"character":50,"h":68,"offset":1,"shift":24,"w":38,"x":2,"y":142,},
|
"50":{"character":50,"h":68,"offset":1,"shift":25,"w":39,"x":2,"y":142,},
|
||||||
"51":{"character":51,"h":68,"offset":1,"shift":24,"w":38,"x":960,"y":72,},
|
"51":{"character":51,"h":68,"offset":1,"shift":25,"w":38,"x":965,"y":72,},
|
||||||
"52":{"character":52,"h":68,"offset":0,"shift":24,"w":40,"x":918,"y":72,},
|
"52":{"character":52,"h":68,"offset":0,"shift":25,"w":40,"x":923,"y":72,},
|
||||||
"53":{"character":53,"h":68,"offset":2,"shift":24,"w":37,"x":235,"y":142,},
|
"53":{"character":53,"h":68,"offset":2,"shift":25,"w":37,"x":236,"y":142,},
|
||||||
"54":{"character":54,"h":68,"offset":1,"shift":24,"w":38,"x":688,"y":142,},
|
"54":{"character":54,"h":68,"offset":1,"shift":25,"w":39,"x":691,"y":142,},
|
||||||
"55":{"character":55,"h":68,"offset":1,"shift":24,"w":38,"x":728,"y":142,},
|
"55":{"character":55,"h":68,"offset":1,"shift":25,"w":39,"x":732,"y":142,},
|
||||||
"56":{"character":56,"h":68,"offset":1,"shift":24,"w":38,"x":768,"y":142,},
|
"56":{"character":56,"h":68,"offset":1,"shift":25,"w":39,"x":773,"y":142,},
|
||||||
"57":{"character":57,"h":68,"offset":1,"shift":24,"w":38,"x":605,"y":212,},
|
"57":{"character":57,"h":68,"offset":1,"shift":25,"w":39,"x":606,"y":212,},
|
||||||
"58":{"character":58,"h":68,"offset":2,"shift":12,"w":24,"x":579,"y":212,},
|
"58":{"character":58,"h":68,"offset":2,"shift":12,"w":24,"x":580,"y":212,},
|
||||||
"59":{"character":59,"h":68,"offset":1,"shift":12,"w":25,"x":552,"y":212,},
|
"59":{"character":59,"h":68,"offset":1,"shift":12,"w":25,"x":553,"y":212,},
|
||||||
"60":{"character":60,"h":68,"offset":1,"shift":24,"w":38,"x":512,"y":212,},
|
"60":{"character":60,"h":68,"offset":1,"shift":25,"w":38,"x":513,"y":212,},
|
||||||
"61":{"character":61,"h":68,"offset":1,"shift":24,"w":38,"x":472,"y":212,},
|
"61":{"character":61,"h":68,"offset":1,"shift":25,"w":38,"x":473,"y":212,},
|
||||||
"62":{"character":62,"h":68,"offset":1,"shift":24,"w":38,"x":432,"y":212,},
|
"62":{"character":62,"h":68,"offset":1,"shift":25,"w":38,"x":433,"y":212,},
|
||||||
"63":{"character":63,"h":68,"offset":0,"shift":20,"w":36,"x":394,"y":212,},
|
"63":{"character":63,"h":68,"offset":0,"shift":21,"w":36,"x":395,"y":212,},
|
||||||
"64":{"character":64,"h":68,"offset":2,"shift":38,"w":51,"x":341,"y":212,},
|
"64":{"character":64,"h":68,"offset":2,"shift":39,"w":51,"x":342,"y":212,},
|
||||||
"65":{"character":65,"h":68,"offset":0,"shift":29,"w":46,"x":293,"y":212,},
|
"65":{"character":65,"h":68,"offset":0,"shift":30,"w":46,"x":294,"y":212,},
|
||||||
"66":{"character":66,"h":68,"offset":3,"shift":29,"w":40,"x":251,"y":212,},
|
"66":{"character":66,"h":68,"offset":3,"shift":29,"w":40,"x":252,"y":212,},
|
||||||
"67":{"character":67,"h":68,"offset":2,"shift":27,"w":40,"x":209,"y":212,},
|
"67":{"character":67,"h":68,"offset":2,"shift":27,"w":40,"x":210,"y":212,},
|
||||||
"68":{"character":68,"h":68,"offset":3,"shift":32,"w":43,"x":164,"y":212,},
|
"68":{"character":68,"h":68,"offset":3,"shift":32,"w":43,"x":165,"y":212,},
|
||||||
"69":{"character":69,"h":68,"offset":3,"shift":24,"w":35,"x":127,"y":212,},
|
"69":{"character":69,"h":68,"offset":3,"shift":24,"w":35,"x":128,"y":212,},
|
||||||
"70":{"character":70,"h":68,"offset":3,"shift":23,"w":35,"x":90,"y":212,},
|
"70":{"character":70,"h":68,"offset":3,"shift":24,"w":35,"x":91,"y":212,},
|
||||||
"71":{"character":71,"h":68,"offset":2,"shift":31,"w":42,"x":46,"y":212,},
|
"71":{"character":71,"h":68,"offset":2,"shift":31,"w":42,"x":47,"y":212,},
|
||||||
"72":{"character":72,"h":68,"offset":3,"shift":33,"w":42,"x":2,"y":212,},
|
"72":{"character":72,"h":68,"offset":3,"shift":33,"w":43,"x":2,"y":212,},
|
||||||
"73":{"character":73,"h":68,"offset":1,"shift":17,"w":31,"x":975,"y":142,},
|
"73":{"character":73,"h":68,"offset":1,"shift":17,"w":31,"x":981,"y":142,},
|
||||||
"74":{"character":74,"h":68,"offset":-4,"shift":14,"w":31,"x":942,"y":142,},
|
"74":{"character":74,"h":68,"offset":-4,"shift":14,"w":31,"x":948,"y":142,},
|
||||||
"75":{"character":75,"h":68,"offset":3,"shift":28,"w":42,"x":898,"y":142,},
|
"75":{"character":75,"h":68,"offset":3,"shift":29,"w":42,"x":904,"y":142,},
|
||||||
"76":{"character":76,"h":68,"offset":3,"shift":24,"w":36,"x":860,"y":142,},
|
"76":{"character":76,"h":68,"offset":3,"shift":24,"w":36,"x":866,"y":142,},
|
||||||
"77":{"character":77,"h":68,"offset":3,"shift":40,"w":50,"x":808,"y":142,},
|
"77":{"character":77,"h":68,"offset":3,"shift":41,"w":50,"x":814,"y":142,},
|
||||||
"78":{"character":78,"h":68,"offset":3,"shift":35,"w":44,"x":872,"y":72,},
|
"78":{"character":78,"h":68,"offset":3,"shift":35,"w":45,"x":876,"y":72,},
|
||||||
"79":{"character":79,"h":68,"offset":2,"shift":34,"w":46,"x":824,"y":72,},
|
"79":{"character":79,"h":68,"offset":2,"shift":34,"w":46,"x":828,"y":72,},
|
||||||
"80":{"character":80,"h":68,"offset":3,"shift":27,"w":38,"x":784,"y":72,},
|
"80":{"character":80,"h":68,"offset":3,"shift":27,"w":39,"x":787,"y":72,},
|
||||||
"81":{"character":81,"h":68,"offset":2,"shift":34,"w":46,"x":866,"y":2,},
|
"81":{"character":81,"h":68,"offset":2,"shift":34,"w":46,"x":866,"y":2,},
|
||||||
"82":{"character":82,"h":68,"offset":3,"shift":28,"w":42,"x":792,"y":2,},
|
"82":{"character":82,"h":68,"offset":3,"shift":28,"w":42,"x":793,"y":2,},
|
||||||
"83":{"character":83,"h":68,"offset":1,"shift":24,"w":37,"x":753,"y":2,},
|
"83":{"character":83,"h":68,"offset":1,"shift":24,"w":37,"x":754,"y":2,},
|
||||||
"84":{"character":84,"h":68,"offset":0,"shift":25,"w":40,"x":711,"y":2,},
|
"84":{"character":84,"h":68,"offset":0,"shift":25,"w":41,"x":711,"y":2,},
|
||||||
"85":{"character":85,"h":68,"offset":3,"shift":32,"w":42,"x":667,"y":2,},
|
"85":{"character":85,"h":68,"offset":3,"shift":33,"w":42,"x":667,"y":2,},
|
||||||
"86":{"character":86,"h":68,"offset":0,"shift":28,"w":44,"x":621,"y":2,},
|
"86":{"character":86,"h":68,"offset":0,"shift":28,"w":44,"x":621,"y":2,},
|
||||||
"87":{"character":87,"h":68,"offset":0,"shift":41,"w":58,"x":561,"y":2,},
|
"87":{"character":87,"h":68,"offset":0,"shift":42,"w":58,"x":561,"y":2,},
|
||||||
"88":{"character":88,"h":68,"offset":0,"shift":28,"w":45,"x":514,"y":2,},
|
"88":{"character":88,"h":68,"offset":0,"shift":29,"w":45,"x":514,"y":2,},
|
||||||
"89":{"character":89,"h":68,"offset":0,"shift":27,"w":43,"x":469,"y":2,},
|
"89":{"character":89,"h":68,"offset":0,"shift":27,"w":43,"x":469,"y":2,},
|
||||||
"90":{"character":90,"h":68,"offset":1,"shift":25,"w":39,"x":428,"y":2,},
|
"90":{"character":90,"h":68,"offset":1,"shift":25,"w":39,"x":428,"y":2,},
|
||||||
"91":{"character":91,"h":68,"offset":2,"shift":14,"w":28,"x":836,"y":2,},
|
"91":{"character":91,"h":68,"offset":3,"shift":14,"w":27,"x":837,"y":2,},
|
||||||
"92":{"character":92,"h":68,"offset":0,"shift":18,"w":34,"x":392,"y":2,},
|
"92":{"character":92,"h":68,"offset":0,"shift":18,"w":34,"x":392,"y":2,},
|
||||||
"93":{"character":93,"h":68,"offset":1,"shift":14,"w":27,"x":326,"y":2,},
|
"93":{"character":93,"h":68,"offset":1,"shift":14,"w":27,"x":326,"y":2,},
|
||||||
"94":{"character":94,"h":68,"offset":0,"shift":24,"w":40,"x":284,"y":2,},
|
"94":{"character":94,"h":68,"offset":0,"shift":25,"w":40,"x":284,"y":2,},
|
||||||
"95":{"character":95,"h":68,"offset":-1,"shift":18,"w":35,"x":247,"y":2,},
|
"95":{"character":95,"h":68,"offset":-1,"shift":18,"w":35,"x":247,"y":2,},
|
||||||
"96":{"character":96,"h":68,"offset":1,"shift":15,"w":29,"x":216,"y":2,},
|
"96":{"character":96,"h":68,"offset":1,"shift":16,"w":29,"x":216,"y":2,},
|
||||||
"97":{"character":97,"h":68,"offset":1,"shift":26,"w":38,"x":176,"y":2,},
|
"97":{"character":97,"h":68,"offset":1,"shift":26,"w":38,"x":176,"y":2,},
|
||||||
"98":{"character":98,"h":68,"offset":3,"shift":27,"w":39,"x":135,"y":2,},
|
"98":{"character":98,"h":68,"offset":3,"shift":27,"w":39,"x":135,"y":2,},
|
||||||
"99":{"character":99,"h":68,"offset":1,"shift":22,"w":36,"x":97,"y":2,},
|
"99":{"character":99,"h":68,"offset":1,"shift":22,"w":36,"x":97,"y":2,},
|
||||||
|
@ -84,19 +84,19 @@
|
||||||
"101":{"character":101,"h":68,"offset":1,"shift":25,"w":39,"x":15,"y":2,},
|
"101":{"character":101,"h":68,"offset":1,"shift":25,"w":39,"x":15,"y":2,},
|
||||||
"102":{"character":102,"h":68,"offset":0,"shift":17,"w":35,"x":355,"y":2,},
|
"102":{"character":102,"h":68,"offset":0,"shift":17,"w":35,"x":355,"y":2,},
|
||||||
"103":{"character":103,"h":68,"offset":1,"shift":27,"w":39,"x":914,"y":2,},
|
"103":{"character":103,"h":68,"offset":1,"shift":27,"w":39,"x":914,"y":2,},
|
||||||
"104":{"character":104,"h":68,"offset":3,"shift":28,"w":38,"x":321,"y":72,},
|
"104":{"character":104,"h":68,"offset":3,"shift":28,"w":39,"x":321,"y":72,},
|
||||||
"105":{"character":105,"h":68,"offset":3,"shift":13,"w":23,"x":955,"y":2,},
|
"105":{"character":105,"h":68,"offset":3,"shift":13,"w":24,"x":955,"y":2,},
|
||||||
"106":{"character":106,"h":68,"offset":-3,"shift":13,"w":29,"x":716,"y":72,},
|
"106":{"character":106,"h":68,"offset":-3,"shift":13,"w":30,"x":718,"y":72,},
|
||||||
"107":{"character":107,"h":68,"offset":3,"shift":26,"w":40,"x":674,"y":72,},
|
"107":{"character":107,"h":68,"offset":3,"shift":27,"w":40,"x":676,"y":72,},
|
||||||
"108":{"character":108,"h":68,"offset":3,"shift":13,"w":23,"x":649,"y":72,},
|
"108":{"character":108,"h":68,"offset":3,"shift":13,"w":23,"x":651,"y":72,},
|
||||||
"109":{"character":109,"h":68,"offset":3,"shift":42,"w":52,"x":595,"y":72,},
|
"109":{"character":109,"h":68,"offset":3,"shift":42,"w":52,"x":597,"y":72,},
|
||||||
"110":{"character":110,"h":68,"offset":3,"shift":28,"w":38,"x":555,"y":72,},
|
"110":{"character":110,"h":68,"offset":3,"shift":28,"w":39,"x":556,"y":72,},
|
||||||
"111":{"character":111,"h":68,"offset":1,"shift":26,"w":40,"x":513,"y":72,},
|
"111":{"character":111,"h":68,"offset":1,"shift":27,"w":40,"x":514,"y":72,},
|
||||||
"112":{"character":112,"h":68,"offset":3,"shift":27,"w":39,"x":472,"y":72,},
|
"112":{"character":112,"h":68,"offset":3,"shift":27,"w":39,"x":473,"y":72,},
|
||||||
"113":{"character":113,"h":68,"offset":1,"shift":27,"w":39,"x":431,"y":72,},
|
"113":{"character":113,"h":68,"offset":1,"shift":27,"w":39,"x":432,"y":72,},
|
||||||
"114":{"character":114,"h":68,"offset":3,"shift":19,"w":32,"x":397,"y":72,},
|
"114":{"character":114,"h":68,"offset":3,"shift":20,"w":32,"x":398,"y":72,},
|
||||||
"115":{"character":115,"h":68,"offset":1,"shift":21,"w":35,"x":747,"y":72,},
|
"115":{"character":115,"h":68,"offset":1,"shift":21,"w":35,"x":750,"y":72,},
|
||||||
"116":{"character":116,"h":68,"offset":0,"shift":19,"w":34,"x":361,"y":72,},
|
"116":{"character":116,"h":68,"offset":0,"shift":19,"w":34,"x":362,"y":72,},
|
||||||
"117":{"character":117,"h":68,"offset":3,"shift":28,"w":38,"x":281,"y":72,},
|
"117":{"character":117,"h":68,"offset":3,"shift":28,"w":38,"x":281,"y":72,},
|
||||||
"118":{"character":118,"h":68,"offset":0,"shift":24,"w":41,"x":238,"y":72,},
|
"118":{"character":118,"h":68,"offset":0,"shift":24,"w":41,"x":238,"y":72,},
|
||||||
"119":{"character":119,"h":68,"offset":0,"shift":37,"w":53,"x":183,"y":72,},
|
"119":{"character":119,"h":68,"offset":0,"shift":37,"w":53,"x":183,"y":72,},
|
||||||
|
@ -105,9 +105,9 @@
|
||||||
"122":{"character":122,"h":68,"offset":1,"shift":21,"w":35,"x":60,"y":72,},
|
"122":{"character":122,"h":68,"offset":1,"shift":21,"w":35,"x":60,"y":72,},
|
||||||
"123":{"character":123,"h":68,"offset":0,"shift":17,"w":32,"x":26,"y":72,},
|
"123":{"character":123,"h":68,"offset":0,"shift":17,"w":32,"x":26,"y":72,},
|
||||||
"124":{"character":124,"h":68,"offset":9,"shift":24,"w":22,"x":2,"y":72,},
|
"124":{"character":124,"h":68,"offset":9,"shift":24,"w":22,"x":2,"y":72,},
|
||||||
"125":{"character":125,"h":68,"offset":1,"shift":17,"w":32,"x":980,"y":2,},
|
"125":{"character":125,"h":68,"offset":1,"shift":17,"w":32,"x":981,"y":2,},
|
||||||
"126":{"character":126,"h":68,"offset":1,"shift":24,"w":38,"x":645,"y":212,},
|
"126":{"character":126,"h":68,"offset":1,"shift":25,"w":38,"x":647,"y":212,},
|
||||||
"9647":{"character":9647,"h":68,"offset":8,"shift":42,"w":42,"x":685,"y":212,},
|
"9647":{"character":9647,"h":68,"offset":8,"shift":42,"w":42,"x":687,"y":212,},
|
||||||
},
|
},
|
||||||
"hinting":0,
|
"hinting":0,
|
||||||
"includeTTF":false,
|
"includeTTF":false,
|
||||||
|
@ -120,14 +120,14 @@
|
||||||
"name":"_f_sdf",
|
"name":"_f_sdf",
|
||||||
"parent":{
|
"parent":{
|
||||||
"name":"font",
|
"name":"font",
|
||||||
"path":"folders/font.yy",
|
"path":"folders/sprites/theme/font.yy",
|
||||||
},
|
},
|
||||||
"pointRounding":0,
|
"pointRounding":0,
|
||||||
"ranges":[
|
"ranges":[
|
||||||
{"lower":32,"upper":127,},
|
{"lower":32,"upper":127,},
|
||||||
{"lower":9647,"upper":9647,},
|
{"lower":9647,"upper":9647,},
|
||||||
],
|
],
|
||||||
"regenerateBitmap":true,
|
"regenerateBitmap":false,
|
||||||
"resourceType":"GMFont",
|
"resourceType":"GMFont",
|
||||||
"resourceVersion":"2.0",
|
"resourceVersion":"2.0",
|
||||||
"sampleText":"abcdef ABCDEF\n0123456789 .,<>\"'&!?\nthe quick brown fox jumps over the lazy dog\nTHE QUICK BROWN FOX JUMPS OVER THE LAZY DOG\nDefault character: ▯ (9647)",
|
"sampleText":"abcdef ABCDEF\n0123456789 .,<>\"'&!?\nthe quick brown fox jumps over the lazy dog\nTHE QUICK BROWN FOX JUMPS OVER THE LAZY DOG\nDefault character: ▯ (9647)",
|
||||||
|
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
|
@ -120,14 +120,14 @@
|
||||||
"name":"_f_sdf_medium",
|
"name":"_f_sdf_medium",
|
||||||
"parent":{
|
"parent":{
|
||||||
"name":"font",
|
"name":"font",
|
||||||
"path":"folders/font.yy",
|
"path":"folders/sprites/theme/font.yy",
|
||||||
},
|
},
|
||||||
"pointRounding":0,
|
"pointRounding":0,
|
||||||
"ranges":[
|
"ranges":[
|
||||||
{"lower":32,"upper":127,},
|
{"lower":32,"upper":127,},
|
||||||
{"lower":9647,"upper":9647,},
|
{"lower":9647,"upper":9647,},
|
||||||
],
|
],
|
||||||
"regenerateBitmap":true,
|
"regenerateBitmap":false,
|
||||||
"resourceType":"GMFont",
|
"resourceType":"GMFont",
|
||||||
"resourceVersion":"2.0",
|
"resourceVersion":"2.0",
|
||||||
"sampleText":"abcdef ABCDEF\n0123456789 .,<>\"'&!?\nthe quick brown fox jumps over the lazy dog\nTHE QUICK BROWN FOX JUMPS OVER THE LAZY DOG\nDefault character: ▯ (9647)",
|
"sampleText":"abcdef ABCDEF\n0123456789 .,<>\"'&!?\nthe quick brown fox jumps over the lazy dog\nTHE QUICK BROWN FOX JUMPS OVER THE LAZY DOG\nDefault character: ▯ (9647)",
|
||||||
|
|
Before Width: | Height: | Size: 58 KiB After Width: | Height: | Size: 58 KiB |
|
@ -547,10 +547,11 @@ event_inherited();
|
||||||
content_pane.hover_content = true;
|
content_pane.hover_content = true;
|
||||||
|
|
||||||
draw_sprite_stretched_ext(THEME.node_bg, 1, _boxx, yy, grid_size, grid_size, COLORS._main_accent, 1);
|
draw_sprite_stretched_ext(THEME.node_bg, 1, _boxx, yy, grid_size, grid_size, COLORS._main_accent, 1);
|
||||||
if(mouse_release(mb_left, sFOCUS))
|
|
||||||
buildNode(_node);
|
if(sFOCUS) {
|
||||||
else if(mouse_release(mb_right, right_free && sFOCUS))
|
if(mouse_release(mb_left)) buildNode(_node);
|
||||||
rightClick(_node);
|
if(mouse_release(mb_right, right_free)) rightClick(_node);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(_node.getTooltip() != "" || _node.tooltip_spr != noone) {
|
if(_node.getTooltip() != "" || _node.tooltip_spr != noone) {
|
||||||
|
@ -673,8 +674,8 @@ event_inherited();
|
||||||
if(!PREFERENCES.dialog_add_node_grouping)
|
if(!PREFERENCES.dialog_add_node_grouping)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
hh += ui(8);
|
hh += ui(4) * (i > 0);
|
||||||
yy += ui(8);
|
yy += ui(4) * (i > 0);
|
||||||
|
|
||||||
var _key = $"{ADD_NODE_PAGE}:{i}";
|
var _key = $"{ADD_NODE_PAGE}:{i}";
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@ if !ready exit;
|
||||||
if(DIALOG_SHOW_FOCUS) DIALOG_DRAW_FOCUS
|
if(DIALOG_SHOW_FOCUS) DIALOG_DRAW_FOCUS
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region search
|
#region content
|
||||||
WIDGET_CURRENT = tb_search;
|
WIDGET_CURRENT = tb_search;
|
||||||
tb_search.setFocusHover(sFOCUS, sHOVER);
|
tb_search.setFocusHover(sFOCUS, sHOVER);
|
||||||
|
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
function __vec2(_x = 0, _y = _x) constructor {
|
function __vec2(_x = 0, _y = _x) constructor {
|
||||||
static set = function(_x = 0, _y = _x) { #region
|
static set = function(_x = 0, _y = _x) {
|
||||||
if(is_struct(_x) && is_instanceof(_x, __vec2)) {
|
if(is_struct(_x) && is_instanceof(_x, __vec2)) {
|
||||||
x = _x.x;
|
x = _x.x;
|
||||||
y = _x.y;
|
y = _x.y;
|
||||||
|
@ -21,162 +21,162 @@ function __vec2(_x = 0, _y = _x) constructor {
|
||||||
x = _x;
|
x = _x;
|
||||||
y = _y;
|
y = _y;
|
||||||
return self;
|
return self;
|
||||||
} set(_x, _y); #endregion
|
} set(_x, _y);
|
||||||
|
|
||||||
ref = noone;
|
ref = noone;
|
||||||
static setRef = function(ref = noone) { #region
|
static setRef = function(ref = noone) {
|
||||||
self.ref = ref;
|
self.ref = ref;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static setIndex = function(index, value) { #region
|
static setIndex = function(index, value) {
|
||||||
INLINE
|
INLINE
|
||||||
switch(index) {
|
switch(index) {
|
||||||
case 0 : x = value; break;
|
case 0 : x = value; break;
|
||||||
case 1 : y = value; break;
|
case 1 : y = value; break;
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static getIndex = function(index) { #region
|
static getIndex = function(index) {
|
||||||
switch(index) {
|
switch(index) {
|
||||||
case 0 : return x;
|
case 0 : return x;
|
||||||
case 1 : return y;
|
case 1 : return y;
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static addElement = function(_x, _y) { #region
|
static addElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x + _x, y + _y);
|
return new __vec2(x + _x, y + _y);
|
||||||
} #endregion
|
}
|
||||||
static _addElement = function(_x, _y) { #region
|
static _addElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
x += _x;
|
x += _x;
|
||||||
y += _y;
|
y += _y;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static add = function(_vec2) { #region
|
static add = function(_vec2) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x + _vec2.x, y + _vec2.y);
|
return new __vec2(x + _vec2.x, y + _vec2.y);
|
||||||
} #endregion
|
}
|
||||||
static _add = function(_vec2) { #region
|
static _add = function(_vec2) {
|
||||||
INLINE
|
INLINE
|
||||||
x += _vec2.x;
|
x += _vec2.x;
|
||||||
y += _vec2.y;
|
y += _vec2.y;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static addElement = function(_x, _y) { #region
|
static addElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x + _x, y + _y);
|
return new __vec2(x + _x, y + _y);
|
||||||
} #endregion
|
}
|
||||||
static _addElement = function(_x, _y) { #region
|
static _addElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
x += _x;
|
x += _x;
|
||||||
y += _y;
|
y += _y;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static subtract = function(_vec2) { #region
|
static subtract = function(_vec2) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x - _vec2.x, y - _vec2.y);
|
return new __vec2(x - _vec2.x, y - _vec2.y);
|
||||||
} #endregion
|
}
|
||||||
static _subtract = function(_vec2) { #region
|
static _subtract = function(_vec2) {
|
||||||
INLINE
|
INLINE
|
||||||
x -= _vec2.x;
|
x -= _vec2.x;
|
||||||
y -= _vec2.y;
|
y -= _vec2.y;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static subtractElement = function(_x, _y) { #region
|
static subtractElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x - _x, y - _y);
|
return new __vec2(x - _x, y - _y);
|
||||||
} #endregion
|
}
|
||||||
static _subtractElement = function(_x, _y) { #region
|
static _subtractElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
x -= _x;
|
x -= _x;
|
||||||
y -= _y;
|
y -= _y;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static multiply = function(_scalar) { #region
|
static multiply = function(_scalar) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x * _scalar, y * _scalar);
|
return new __vec2(x * _scalar, y * _scalar);
|
||||||
} #endregion
|
}
|
||||||
static _multiply = function(_scalar) { #region
|
static _multiply = function(_scalar) {
|
||||||
INLINE
|
INLINE
|
||||||
x *= _scalar;
|
x *= _scalar;
|
||||||
y *= _scalar;
|
y *= _scalar;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static multiplyVec = function(_vec) { #region
|
static multiplyVec = function(_vec) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x * _vec.x, y * _vec.y);
|
return new __vec2(x * _vec.x, y * _vec.y);
|
||||||
} #endregion
|
}
|
||||||
static _multiplyVec = function(_vec) { #region
|
static _multiplyVec = function(_vec) {
|
||||||
INLINE
|
INLINE
|
||||||
x *= _vec.x;
|
x *= _vec.x;
|
||||||
y *= _vec.y;
|
y *= _vec.y;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static multiplyElement = function(_x, _y) { #region
|
static multiplyElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x * _x, y * _y);
|
return new __vec2(x * _x, y * _y);
|
||||||
} #endregion
|
}
|
||||||
static _multiplyElement = function(_x, _y) { #region
|
static _multiplyElement = function(_x, _y) {
|
||||||
INLINE
|
INLINE
|
||||||
x *= _x;
|
x *= _x;
|
||||||
y *= _y;
|
y *= _y;
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static divide = function(_scalar) { #region
|
static divide = function(_scalar) {
|
||||||
INLINE
|
INLINE
|
||||||
if (_scalar != 0)
|
if (_scalar != 0)
|
||||||
return new __vec2(x / _scalar, y / _scalar);
|
return new __vec2(x / _scalar, y / _scalar);
|
||||||
|
|
||||||
return new __vec2(x, y, z); // Avoid division by zero
|
return new __vec2(x, y, z); // Avoid division by zero
|
||||||
} #endregion
|
}
|
||||||
static _divide = function(_scalar) { #region
|
static _divide = function(_scalar) {
|
||||||
INLINE
|
INLINE
|
||||||
if (_scalar != 0) {
|
if (_scalar != 0) {
|
||||||
x /= _scalar;
|
x /= _scalar;
|
||||||
y /= _scalar;
|
y /= _scalar;
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static dot = function(_vec2) { #region
|
static dot = function(_vec2) {
|
||||||
INLINE
|
INLINE
|
||||||
return x * _vec2.x + y * _vec2.y;
|
return x * _vec2.x + y * _vec2.y;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static distance = function(_vec2) { #region
|
static distance = function(_vec2) {
|
||||||
INLINE
|
INLINE
|
||||||
var dx = _vec2.x - x;
|
var dx = _vec2.x - x;
|
||||||
var dy = _vec2.y - y;
|
var dy = _vec2.y - y;
|
||||||
return sqrt(dx * dx + dy * dy);
|
return sqrt(dx * dx + dy * dy);
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static directionTo = function(_vec2) { #region
|
static directionTo = function(_vec2) {
|
||||||
INLINE
|
INLINE
|
||||||
return point_direction(x, y, _vec2.x, _vec2.y);
|
return point_direction(x, y, _vec2.x, _vec2.y);
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static length = function() { #region
|
static length = function() {
|
||||||
INLINE
|
INLINE
|
||||||
return sqrt(x * x + y * y);
|
return sqrt(x * x + y * y);
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static normalize = function() { #region
|
static normalize = function() {
|
||||||
INLINE
|
INLINE
|
||||||
return clone()._normalize();
|
return clone()._normalize();
|
||||||
} #endregion
|
}
|
||||||
static _normalize = function() { #region
|
static _normalize = function() {
|
||||||
INLINE
|
INLINE
|
||||||
var _length = length();
|
var _length = length();
|
||||||
if (_length != 0) {
|
if (_length != 0) {
|
||||||
|
@ -184,33 +184,33 @@ function __vec2(_x = 0, _y = _x) constructor {
|
||||||
y /= _length;
|
y /= _length;
|
||||||
}
|
}
|
||||||
return self;
|
return self;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static lerpTo = function(to, speed = 0.3) { #region
|
static lerpTo = function(to, speed = 0.3) {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(lerp(x, to.x, speed), lerp(y, to.y, speed));
|
return new __vec2(lerp(x, to.x, speed), lerp(y, to.y, speed));
|
||||||
} #endregion
|
}
|
||||||
static _lerpTo = function(to, speed = 0.3) { #region
|
static _lerpTo = function(to, speed = 0.3) {
|
||||||
INLINE
|
INLINE
|
||||||
x = lerp(x, to.x, speed);
|
x = lerp(x, to.x, speed);
|
||||||
y = lerp(y, to.y, speed);
|
y = lerp(y, to.y, speed);
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static _lerp_float = function(to, speed = 5, pre = 0.01) { #region
|
static _lerp_float = function(to, speed = 5, pre = 0.01) {
|
||||||
INLINE
|
INLINE
|
||||||
x = lerp_float(x, to.x, speed, pre);
|
x = lerp_float(x, to.x, speed, pre);
|
||||||
y = lerp_float(y, to.y, speed, pre);
|
y = lerp_float(y, to.y, speed, pre);
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static equal = function(to) { #region
|
static equal = function(to) {
|
||||||
INLINE
|
INLINE
|
||||||
return x == to.x && y == to.y;
|
return x == to.x && y == to.y;
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static clone = function() { #region
|
static clone = function() {
|
||||||
INLINE
|
INLINE
|
||||||
return new __vec2(x, y);
|
return new __vec2(x, y);
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static toString = function() { return $"[__vec2] ({x}, {y})"; }
|
static toString = function() { return $"[__vec2] ({x}, {y})"; }
|
||||||
|
|
||||||
|
|
|
@ -21,15 +21,19 @@ function cornerBox(_onModify, _unit = noone) : widget() constructor {
|
||||||
onModifySingle[2] = function(val) { onModifyIndex(val, 2); }
|
onModifySingle[2] = function(val) { onModifyIndex(val, 2); }
|
||||||
onModifySingle[3] = function(val) { onModifyIndex(val, 3); }
|
onModifySingle[3] = function(val) { onModifyIndex(val, 3); }
|
||||||
|
|
||||||
labels = [ "r", "t", "l", "b" ];
|
|
||||||
|
|
||||||
for(var i = 0; i < 4; i++) {
|
for(var i = 0; i < 4; i++) {
|
||||||
tb[i] = new textBox(TEXTBOX_INPUT.number, onModifySingle[i]);
|
tb[i] = new textBox(TEXTBOX_INPUT.number, onModifySingle[i]);
|
||||||
tb[i].label = labels[i];
|
|
||||||
|
tb[i].labelSpr = s_inspector_corner;
|
||||||
|
tb[i].labelSprIndex = i;
|
||||||
|
tb[i].labelColor = COLORS._main_icon;
|
||||||
tb[i].slidable = true;
|
tb[i].slidable = true;
|
||||||
tb[i].hide = true;
|
tb[i].hide = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
tb[1].labelAlign = fa_right;
|
||||||
|
tb[2].labelAlign = fa_right;
|
||||||
|
|
||||||
static setInteract = function(interactable = noone) {
|
static setInteract = function(interactable = noone) {
|
||||||
self.interactable = interactable;
|
self.interactable = interactable;
|
||||||
b_link.interactable = interactable;
|
b_link.interactable = interactable;
|
||||||
|
@ -43,8 +47,8 @@ function cornerBox(_onModify, _unit = noone) : widget() constructor {
|
||||||
|
|
||||||
tb[0].register(parent);
|
tb[0].register(parent);
|
||||||
tb[1].register(parent);
|
tb[1].register(parent);
|
||||||
tb[2].register(parent);
|
|
||||||
tb[3].register(parent);
|
tb[3].register(parent);
|
||||||
|
tb[2].register(parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
static isHovering = function() {
|
static isHovering = function() {
|
||||||
|
@ -104,11 +108,11 @@ function cornerBox(_onModify, _unit = noone) : widget() constructor {
|
||||||
var tb_bx = _x + tb_w;
|
var tb_bx = _x + tb_w;
|
||||||
var tb_by = _y + _h + ui(4);
|
var tb_by = _y + _h + ui(4);
|
||||||
|
|
||||||
tb[2].draw(tb_lx, tb_ly, tb_w, tb_h, array_safe_get_fast(_data, 2), _m);
|
tb[0].draw(tb_lx, tb_ly, tb_w, tb_h, array_safe_get_fast(_data, 0), _m);
|
||||||
tb[0].draw(tb_rx, tb_ry, tb_w, tb_h, array_safe_get_fast(_data, 0), _m);
|
tb[1].draw(tb_rx, tb_ry, tb_w, tb_h, array_safe_get_fast(_data, 1), _m);
|
||||||
|
|
||||||
tb[1].draw(tb_tx, tb_ty, tb_w, tb_h, array_safe_get_fast(_data, 1), _m);
|
tb[3].draw(tb_tx, tb_ty, tb_w, tb_h, array_safe_get_fast(_data, 3), _m);
|
||||||
tb[3].draw(tb_bx, tb_by, tb_w, tb_h, array_safe_get_fast(_data, 3), _m);
|
tb[2].draw(tb_bx, tb_by, tb_w, tb_h, array_safe_get_fast(_data, 2), _m);
|
||||||
|
|
||||||
resetFocus();
|
resetFocus();
|
||||||
|
|
||||||
|
|
|
@ -38,14 +38,14 @@ function Node_Greyscale(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
|
||||||
|
|
||||||
attribute_surface_depth();
|
attribute_surface_depth();
|
||||||
|
|
||||||
static step = function() { #region
|
static step = function() {
|
||||||
__step_mask_modifier();
|
__step_mask_modifier();
|
||||||
|
|
||||||
inputs[1].mappableStep();
|
inputs[1].mappableStep();
|
||||||
inputs[2].mappableStep();
|
inputs[2].mappableStep();
|
||||||
} #endregion
|
}
|
||||||
|
|
||||||
static processData = function(_outSurf, _data, _output_index, _array_index) { #region
|
static processData = function(_outSurf, _data, _output_index, _array_index) {
|
||||||
|
|
||||||
surface_set_shader(_outSurf, sh_greyscale);
|
surface_set_shader(_outSurf, sh_greyscale);
|
||||||
shader_set_f_map("brightness", _data[1], _data[ 9], inputs[1]);
|
shader_set_f_map("brightness", _data[1], _data[ 9], inputs[1]);
|
||||||
|
@ -58,5 +58,5 @@ function Node_Greyscale(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
|
||||||
_outSurf = channel_apply(_data[0], _outSurf, _data[6]);
|
_outSurf = channel_apply(_data[0], _outSurf, _data[6]);
|
||||||
|
|
||||||
return _outSurf;
|
return _outSurf;
|
||||||
} #endregion
|
}
|
||||||
}
|
}
|
|
@ -117,7 +117,7 @@ function Node_Path_Blend(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
static getPointRatio = function(_rat, ind = 0, out = undefined) { #region
|
static getPointRatio = function(_rat, ind = 0, out = undefined) { #region
|
||||||
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
||||||
|
|
||||||
var _cKey = $"{_rat},{ind}";
|
var _cKey = $"{string_format(_rat, 0, 6)},{ind}";
|
||||||
if(ds_map_exists(cached_pos, _cKey)) {
|
if(ds_map_exists(cached_pos, _cKey)) {
|
||||||
var _p = cached_pos[? _cKey];
|
var _p = cached_pos[? _cKey];
|
||||||
out.x = _p.x;
|
out.x = _p.x;
|
||||||
|
|
|
@ -86,7 +86,7 @@ function Node_Path_Bridge(_x, _y, _group = noone) : Node(_x, _y, _group) constru
|
||||||
static getPointDistance = function(_dist, ind = 0, out = undefined) { #region
|
static getPointDistance = function(_dist, ind = 0, out = undefined) { #region
|
||||||
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
||||||
|
|
||||||
var _cKey = $"{_dist},{ind}";
|
var _cKey = $"{string_format(_dist, 0, 6)},{ind}";
|
||||||
if(ds_map_exists(cached_pos, _cKey)) {
|
if(ds_map_exists(cached_pos, _cKey)) {
|
||||||
var _p = cached_pos[? _cKey];
|
var _p = cached_pos[? _cKey];
|
||||||
out.x = _p.x;
|
out.x = _p.x;
|
||||||
|
|
|
@ -112,7 +112,7 @@ function Node_Path_Builder(_x, _y, _group = noone) : Node(_x, _y, _group) constr
|
||||||
static getPointDistance = function(_dist, ind = 0, out = undefined) {
|
static getPointDistance = function(_dist, ind = 0, out = undefined) {
|
||||||
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
||||||
|
|
||||||
var _cKey = $"{ind}, {_dist}";
|
var _cKey = $"{ind}, {string_format(_dist, 0, 6)}";
|
||||||
if(ds_map_exists(cached_pos, _cKey)) {
|
if(ds_map_exists(cached_pos, _cKey)) {
|
||||||
var _p = cached_pos[? _cKey];
|
var _p = cached_pos[? _cKey];
|
||||||
out.x = _p.x;
|
out.x = _p.x;
|
||||||
|
|
|
@ -13,11 +13,13 @@ function Node_Path_Fill(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
|
||||||
|
|
||||||
newInput(4, nodeValue_Bool("Inverted", self, false))
|
newInput(4, nodeValue_Bool("Inverted", self, false))
|
||||||
|
|
||||||
|
newInput(5, nodeValue_Color("Bachground", self, cola(c_black, 0)))
|
||||||
|
|
||||||
newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone));
|
newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone));
|
||||||
|
|
||||||
input_display_list = [ 0,
|
input_display_list = [ 0,
|
||||||
["Path", false], 1, 2,
|
["Path", false], 1, 2,
|
||||||
["COlor", false], 3, 4,
|
["Color", false], 3, 4, 5,
|
||||||
]
|
]
|
||||||
|
|
||||||
temp_surface = [ 0 ];
|
temp_surface = [ 0 ];
|
||||||
|
@ -36,6 +38,7 @@ function Node_Path_Fill(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
|
||||||
var _reso = _data[2];
|
var _reso = _data[2];
|
||||||
var _colr = _data[3];
|
var _colr = _data[3];
|
||||||
var _invt = _data[4];
|
var _invt = _data[4];
|
||||||
|
var _bg = _data[5];
|
||||||
|
|
||||||
_outSurf = surface_verify(_outSurf, _dim[0], _dim[1]);
|
_outSurf = surface_verify(_outSurf, _dim[0], _dim[1]);
|
||||||
if(!struct_has(_path, "getPointRatio")) return _outSurf;
|
if(!struct_has(_path, "getPointRatio")) return _outSurf;
|
||||||
|
@ -46,7 +49,7 @@ function Node_Path_Fill(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
|
||||||
|
|
||||||
surface_set_target(_outSurf);
|
surface_set_target(_outSurf);
|
||||||
if(_invt) { draw_clear(_colr); BLEND_SUBTRACT }
|
if(_invt) { draw_clear(_colr); BLEND_SUBTRACT }
|
||||||
else { DRAW_CLEAR }
|
else { draw_clear(_bg); }
|
||||||
draw_set_color(_invt? c_white : _colr);
|
draw_set_color(_invt? c_white : _colr);
|
||||||
|
|
||||||
array_map_ext(path_points, function(p, i) /*=>*/ {return __tpath.getPointRatio(i * __step, 0, p)});
|
array_map_ext(path_points, function(p, i) /*=>*/ {return __tpath.getPointRatio(i * __step, 0, p)});
|
||||||
|
|
|
@ -30,7 +30,7 @@ function Node_Path_From_Mask(_x, _y, _group = noone) : Node(_x, _y, _group) cons
|
||||||
static getPointDistance = function(_dist, _ind = 0, out = undefined) { #region
|
static getPointDistance = function(_dist, _ind = 0, out = undefined) { #region
|
||||||
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
||||||
|
|
||||||
var _cKey = $"{_dist},{_ind}";
|
var _cKey = $"{string_format(_dist, 0, 6)},{_ind}";
|
||||||
if(ds_map_exists(cached_pos, _cKey)) {
|
if(ds_map_exists(cached_pos, _cKey)) {
|
||||||
var _p = cached_pos[? _cKey];
|
var _p = cached_pos[? _cKey];
|
||||||
out.x = _p.x;
|
out.x = _p.x;
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
function Node_Path_Morph(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
|
function Node_Path_Morph(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor {
|
||||||
name = "Morph Path";
|
name = "Morph Path";
|
||||||
|
dimension_index = 2;
|
||||||
|
|
||||||
newInput(0, nodeValue_PathNode("Path 1", self, noone))
|
newInput(0, nodeValue_PathNode("Path 1", self, noone))
|
||||||
.setVisible(true, true)
|
.setVisible(true, true)
|
||||||
|
@ -11,16 +12,25 @@ function Node_Path_Morph(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
|
|
||||||
newInput(2, nodeValue_Dimension(self));
|
newInput(2, nodeValue_Dimension(self));
|
||||||
|
|
||||||
newInput(3, nodeValue_Int("Subdivision", self, 512))
|
newInput(3, nodeValue_Int("Subdivision", self, 128))
|
||||||
.setValidator(VV_min(2))
|
.setValidator(VV_min(2))
|
||||||
.rejectArray();
|
.rejectArray();
|
||||||
|
|
||||||
|
newInput(4, nodeValue_Bool("Clip In-Out", self, false))
|
||||||
|
|
||||||
|
newInput(5, nodeValue_Curve("Curve", self, CURVE_DEF_01));
|
||||||
|
|
||||||
|
newInput(6, nodeValue_Bool("Match index", self, false))
|
||||||
|
|
||||||
newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone));
|
newOutput(0, nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone));
|
||||||
|
|
||||||
input_display_list = [ 0, 1,
|
input_display_list = [ 0, 1,
|
||||||
["Morphing", false], 2, 3,
|
["Morphing", false], 2, 3, 6,
|
||||||
|
["Rendering", false], 5, 4,
|
||||||
]
|
]
|
||||||
|
|
||||||
|
attribute_surface_depth();
|
||||||
|
|
||||||
temp_surface = [ 0 ];
|
temp_surface = [ 0 ];
|
||||||
|
|
||||||
static drawOverlay = function(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) {
|
static drawOverlay = function(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) {
|
||||||
|
@ -31,13 +41,16 @@ function Node_Path_Morph(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
if(_path && struct_has(_path, "drawOverlay")) _path.drawOverlay(hover, active, _x, _y, _s, _mx, _my, _snx, _sny);
|
if(_path && struct_has(_path, "drawOverlay")) _path.drawOverlay(hover, active, _x, _y, _s, _mx, _my, _snx, _sny);
|
||||||
}
|
}
|
||||||
|
|
||||||
static update = function() {
|
static processData = function(_outSurf, _data, _output_index, _array_index) {
|
||||||
var _path1 = getInputData(0);
|
var _path1 = _data[0];
|
||||||
var _path2 = getInputData(1);
|
var _path2 = _data[1];
|
||||||
if(_path1 == noone || _path2 == noone) return;
|
if(_path1 == noone || _path2 == noone) return _outSurf;
|
||||||
|
|
||||||
var _dim = getInputData(2);
|
var _dim = _data[2];
|
||||||
var _sub = getInputData(3);
|
var _sub = _data[3] + 1;
|
||||||
|
var _clp = _data[4];
|
||||||
|
var _cur = _data[5];
|
||||||
|
var _mid = _data[6];
|
||||||
|
|
||||||
var _p1 = array_create(_sub * 2);
|
var _p1 = array_create(_sub * 2);
|
||||||
var _p2 = array_create(_sub * 2);
|
var _p2 = array_create(_sub * 2);
|
||||||
|
@ -57,18 +70,20 @@ function Node_Path_Morph(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
_p2[i * 2 + 1] = _pp.y;
|
_p2[i * 2 + 1] = _pp.y;
|
||||||
}
|
}
|
||||||
|
|
||||||
var _out = outputs[0].getValue();
|
surface_set_shader(_outSurf, sh_path_morph);
|
||||||
_out = surface_verify(_out, _dim[0], _dim[1])
|
|
||||||
|
|
||||||
surface_set_shader(_out, sh_path_morph);
|
|
||||||
shader_set_2("dimension", _dim);
|
shader_set_2("dimension", _dim);
|
||||||
shader_set_i("subdivision", _sub);
|
shader_set_i("subdivision", _sub);
|
||||||
|
shader_set_i("clip", _clp);
|
||||||
|
shader_set_i("matchIndex", _mid);
|
||||||
shader_set_f("point1", _p1);
|
shader_set_f("point1", _p1);
|
||||||
shader_set_f("point2", _p2);
|
shader_set_f("point2", _p2);
|
||||||
|
|
||||||
|
shader_set_f("w_curve", _cur);
|
||||||
|
shader_set_i("w_amount", array_length(_cur));
|
||||||
|
|
||||||
draw_empty();
|
draw_empty();
|
||||||
surface_reset_shader();
|
surface_reset_shader();
|
||||||
|
|
||||||
outputs[0].setValue(_out);
|
return _outSurf;
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -25,7 +25,7 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
new scrollItem("Line", s_node_shape_type, 16),
|
new scrollItem("Line", s_node_shape_type, 16),
|
||||||
new scrollItem("Curve", s_shape_curve, 0),
|
new scrollItem("Curve", s_shape_curve, 0),
|
||||||
];
|
];
|
||||||
newInput(3, nodeValue_Enum_Scroll("Shape", self, 0, shapeScroll));
|
newInput(3, nodeValue_Enum_Scroll("Shape", self, 0, { data: shapeScroll, horizontal: true, text_pad: ui(16) }));
|
||||||
|
|
||||||
newInput(4, nodeValue_Float("Skew", self, .5))
|
newInput(4, nodeValue_Float("Skew", self, .5))
|
||||||
.setDisplay(VALUE_DISPLAY.slider, { range: [ -1, 1, 0.01] });
|
.setDisplay(VALUE_DISPLAY.slider, { range: [ -1, 1, 0.01] });
|
||||||
|
@ -38,11 +38,13 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
|
|
||||||
newInput(8, nodeValue_Float("Inner Radius", self, .5));
|
newInput(8, nodeValue_Float("Inner Radius", self, .5));
|
||||||
|
|
||||||
|
newInput(9, nodeValue_Corner("Corner Radius", self, [ 0, 0, 0, 0 ]));
|
||||||
|
|
||||||
newOutput(0, nodeValue_Output("Path data", self, VALUE_TYPE.pathnode, self));
|
newOutput(0, nodeValue_Output("Path data", self, VALUE_TYPE.pathnode, self));
|
||||||
|
|
||||||
input_display_list = [
|
input_display_list = [
|
||||||
["Transform", false], 0, 2, 1,
|
["Transform", false], 0, 2, 1,
|
||||||
["Shape", false], 3, 4, 5, 6, 7, 8,
|
["Shape", false], 3, 4, 5, 6, 7, 8, 9,
|
||||||
];
|
];
|
||||||
|
|
||||||
points = [];
|
points = [];
|
||||||
|
@ -62,6 +64,8 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
pa2x = 0; pa2y = 0;
|
pa2x = 0; pa2y = 0;
|
||||||
pa3 = 0;
|
pa3 = 0;
|
||||||
|
|
||||||
|
corners = [ 0, 0, 0, 0 ];
|
||||||
|
|
||||||
preview_surf = noone;
|
preview_surf = noone;
|
||||||
|
|
||||||
static getLineCount = function() /*=>*/ {return 1};
|
static getLineCount = function() /*=>*/ {return 1};
|
||||||
|
@ -78,23 +82,11 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
case "Rectangle" :
|
case "Rectangle" :
|
||||||
case "Trapezoid" :
|
case "Trapezoid" :
|
||||||
case "Parallelogram" :
|
case "Parallelogram" :
|
||||||
if(_rat <= .25) {
|
var i = floor(_rat * 4);
|
||||||
var r = _rat * 4;
|
var r = (_rat - i * .25) * 4;
|
||||||
out.x = lerp(points[0][0], points[1][0], r);
|
|
||||||
out.y = lerp(points[0][1], points[1][1], r);
|
out.x = lerp(points[i * 2][0], points[i * 2 + 1][0], r);
|
||||||
} else if(_rat <= .50) {
|
out.y = lerp(points[i * 2][1], points[i * 2 + 1][1], r);
|
||||||
var r = (_rat - .25) * 4;
|
|
||||||
out.x = lerp(points[1][0], points[2][0], r);
|
|
||||||
out.y = lerp(points[1][1], points[2][1], r);
|
|
||||||
} else if(_rat <= .75) {
|
|
||||||
var r = (_rat - .50) * 4;
|
|
||||||
out.x = lerp(points[2][0], points[3][0], r);
|
|
||||||
out.y = lerp(points[2][1], points[3][1], r);
|
|
||||||
} else {
|
|
||||||
var r = (_rat - .75) * 4;
|
|
||||||
out.x = lerp(points[3][0], points[0][0], r);
|
|
||||||
out.y = lerp(points[3][1], points[0][1], r);
|
|
||||||
}
|
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case "Ellipse" :
|
case "Ellipse" :
|
||||||
|
@ -148,7 +140,6 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
// point_vec2_rotate(out, posx, posy, rot);
|
|
||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -190,6 +181,7 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
var _pa3 = inputs[6].getValue();
|
var _pa3 = inputs[6].getValue();
|
||||||
var _sid = inputs[7].getValue();
|
var _sid = inputs[7].getValue();
|
||||||
var _inn = inputs[8].getValue();
|
var _inn = inputs[8].getValue();
|
||||||
|
var _c = inputs[9].getValue();
|
||||||
|
|
||||||
shape = inputs[3].getValue();
|
shape = inputs[3].getValue();
|
||||||
posx = _pos[0];
|
posx = _pos[0];
|
||||||
|
@ -203,6 +195,8 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
pa2y = _aran[1];
|
pa2y = _aran[1];
|
||||||
pa3 = _pa3;
|
pa3 = _pa3;
|
||||||
|
|
||||||
|
corners = _c;
|
||||||
|
|
||||||
var ox, oy, nx, ny, x0, y0;
|
var ox, oy, nx, ny, x0, y0;
|
||||||
|
|
||||||
inputs[4].setVisible(false);
|
inputs[4].setVisible(false);
|
||||||
|
@ -210,15 +204,31 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
inputs[6].setVisible(false);
|
inputs[6].setVisible(false);
|
||||||
inputs[7].setVisible(false);
|
inputs[7].setVisible(false);
|
||||||
inputs[8].setVisible(false);
|
inputs[8].setVisible(false);
|
||||||
|
inputs[9].setVisible(false);
|
||||||
|
|
||||||
switch(shapeScroll[shape].name) {
|
switch(shapeScroll[shape].name) {
|
||||||
case "Rectangle" :
|
case "Rectangle" :
|
||||||
|
inputs[9].setVisible(true);
|
||||||
|
|
||||||
loop = true;
|
loop = true;
|
||||||
|
var x0 = posx - scax;
|
||||||
|
var y0 = posy - scay;
|
||||||
|
|
||||||
|
var x1 = posx + scax;
|
||||||
|
var y1 = posy + scay;
|
||||||
|
|
||||||
points = [
|
points = [
|
||||||
[ posx - scax, posy - scay ],
|
[ x0 + _c[0], y0 ],
|
||||||
[ posx + scax, posy - scay ],
|
[ x1 - _c[1], y0 ],
|
||||||
[ posx + scax, posy + scay ],
|
|
||||||
[ posx - scax, posy + scay ],
|
[ x1, y0 + _c[1] ],
|
||||||
|
[ x1, y1 - _c[2] ],
|
||||||
|
|
||||||
|
[ x1 - _c[2], y1 ],
|
||||||
|
[ x0 + _c[3], y1 ],
|
||||||
|
|
||||||
|
[ x0, y1 - _c[3] ],
|
||||||
|
[ x0, y0 + _c[0] ],
|
||||||
];
|
];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -229,8 +239,15 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
points = [
|
points = [
|
||||||
[ posx - scax * saturate(1 - _pa1), posy - scay ],
|
[ posx - scax * saturate(1 - _pa1), posy - scay ],
|
||||||
[ posx + scax * saturate(1 - _pa1), posy - scay ],
|
[ posx + scax * saturate(1 - _pa1), posy - scay ],
|
||||||
|
|
||||||
|
[ posx + scax * saturate(1 - _pa1), posy - scay ],
|
||||||
|
[ posx + scax * saturate(1 + _pa1), posy + scay ],
|
||||||
|
|
||||||
[ posx + scax * saturate(1 + _pa1), posy + scay ],
|
[ posx + scax * saturate(1 + _pa1), posy + scay ],
|
||||||
[ posx - scax * saturate(1 + _pa1), posy + scay ],
|
[ posx - scax * saturate(1 + _pa1), posy + scay ],
|
||||||
|
|
||||||
|
[ posx - scax * saturate(1 + _pa1), posy + scay ],
|
||||||
|
[ posx - scax * saturate(1 - _pa1), posy - scay ],
|
||||||
];
|
];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
@ -241,8 +258,15 @@ function Node_Path_Shape(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
points = [
|
points = [
|
||||||
[ posx - scax * saturate(1 - _pa1), posy - scay ],
|
[ posx - scax * saturate(1 - _pa1), posy - scay ],
|
||||||
[ posx + scax * saturate(1 + _pa1), posy - scay ],
|
[ posx + scax * saturate(1 + _pa1), posy - scay ],
|
||||||
|
|
||||||
|
[ posx + scax * saturate(1 + _pa1), posy - scay ],
|
||||||
|
[ posx + scax * saturate(1 - _pa1), posy + scay ],
|
||||||
|
|
||||||
[ posx + scax * saturate(1 - _pa1), posy + scay ],
|
[ posx + scax * saturate(1 - _pa1), posy + scay ],
|
||||||
[ posx - scax * saturate(1 + _pa1), posy + scay ],
|
[ posx - scax * saturate(1 + _pa1), posy + scay ],
|
||||||
|
|
||||||
|
[ posx - scax * saturate(1 + _pa1), posy + scay ],
|
||||||
|
[ posx - scax * saturate(1 - _pa1), posy - scay ],
|
||||||
];
|
];
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
|
|
@ -60,7 +60,7 @@ function Node_Path_Shift(_x, _y, _group = noone) : Node(_x, _y, _group) construc
|
||||||
static getPointRatio = function(_rat, ind = 0, out = undefined) {
|
static getPointRatio = function(_rat, ind = 0, out = undefined) {
|
||||||
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
||||||
|
|
||||||
var _cKey = $"{_rat},{ind}";
|
var _cKey = $"{string_format(_rat, 0, 6)},{ind}";
|
||||||
if(ds_map_exists(cached_pos, _cKey)) {
|
if(ds_map_exists(cached_pos, _cKey)) {
|
||||||
var _p = cached_pos[? _cKey];
|
var _p = cached_pos[? _cKey];
|
||||||
out.x = _p.x;
|
out.x = _p.x;
|
||||||
|
|
|
@ -5,13 +5,15 @@ function Node_Path_Transform(_x, _y, _group = noone) : Node(_x, _y, _group) cons
|
||||||
newInput(0, nodeValue_PathNode("Path", self, noone))
|
newInput(0, nodeValue_PathNode("Path", self, noone))
|
||||||
.setVisible(true, true);
|
.setVisible(true, true);
|
||||||
|
|
||||||
newInput(1, nodeValue_Vec2("Position", self, [ 0, 0 ]));
|
newInput(1, nodeValue_Vec2("Position", self, [ 0, 0 ]))
|
||||||
|
.setUnitRef(function() /*=>*/ {return DEF_SURF}, VALUE_UNIT.reference);
|
||||||
|
|
||||||
newInput(2, nodeValue_Rotation("Rotation", self, 0));
|
newInput(2, nodeValue_Rotation("Rotation", self, 0));
|
||||||
|
|
||||||
newInput(3, nodeValue_Vec2("Scale", self, [ 1, 1 ]));
|
newInput(3, nodeValue_Vec2("Scale", self, [ 1, 1 ]));
|
||||||
|
|
||||||
newInput(4, nodeValue_Vec2("Anchor", self, [ 0, 0 ]));
|
newInput(4, nodeValue_Vec2("Anchor", self, [ 0, 0 ]))
|
||||||
|
.setUnitRef(function() /*=>*/ {return DEF_SURF}, VALUE_UNIT.reference);
|
||||||
|
|
||||||
newOutput(0, nodeValue_Output("Path", self, VALUE_TYPE.pathnode, self));
|
newOutput(0, nodeValue_Output("Path", self, VALUE_TYPE.pathnode, self));
|
||||||
|
|
||||||
|
@ -21,8 +23,32 @@ function Node_Path_Transform(_x, _y, _group = noone) : Node(_x, _y, _group) cons
|
||||||
rot = 0;
|
rot = 0;
|
||||||
sca = [ 1, 1 ];
|
sca = [ 1, 1 ];
|
||||||
anc = [ 0, 0 ];
|
anc = [ 0, 0 ];
|
||||||
|
p = new __vec2();
|
||||||
|
|
||||||
static drawOverlay = function(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) {
|
static drawOverlay = function(hover, active, _x, _y, _s, _mx, _my, _snx, _sny) {
|
||||||
|
var _path = getInputData(0);
|
||||||
|
if(_path && struct_has(_path, "drawOverlay")) _path.drawOverlay(hover, active, _x, _y, _s, _mx, _my, _snx, _sny);
|
||||||
|
|
||||||
|
draw_set_color(COLORS._main_icon);
|
||||||
|
var _amo = getLineCount();
|
||||||
|
for( var i = 0; i < _amo; i++ ) {
|
||||||
|
var _len = getLength(i);
|
||||||
|
var _stp = 1 / clamp(_len * _s, 1, 64);
|
||||||
|
|
||||||
|
var ox, oy, nx, ny;
|
||||||
|
|
||||||
|
for( var j = 0; j < 1; j += _stp ) {
|
||||||
|
p = getPointRatio(j, i, p);
|
||||||
|
nx = _x + p.x * _s;
|
||||||
|
ny = _y + p.y * _s;
|
||||||
|
|
||||||
|
if(j > 0) draw_line_width(ox, oy, nx, ny, 1);
|
||||||
|
|
||||||
|
ox = nx;
|
||||||
|
oy = ny;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var px = _x + pos[0] * _s;
|
var px = _x + pos[0] * _s;
|
||||||
var py = _y + pos[1] * _s;
|
var py = _y + pos[1] * _s;
|
||||||
|
|
||||||
|
@ -65,9 +91,9 @@ function Node_Path_Transform(_x, _y, _group = noone) : Node(_x, _y, _group) cons
|
||||||
}
|
}
|
||||||
|
|
||||||
static getPointRatio = function(_rat, ind = 0, out = undefined) {
|
static getPointRatio = function(_rat, ind = 0, out = undefined) {
|
||||||
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
if(out == undefined) out = new __vec2();
|
||||||
|
|
||||||
var _cKey = $"{_rat},{ind}";
|
var _cKey = $"{string_format(_rat, 0, 6)},{ind}";
|
||||||
if(ds_map_exists(cached_pos, _cKey)) {
|
if(ds_map_exists(cached_pos, _cKey)) {
|
||||||
var _p = cached_pos[? _cKey];
|
var _p = cached_pos[? _cKey];
|
||||||
out.x = _p.x;
|
out.x = _p.x;
|
||||||
|
@ -83,7 +109,7 @@ function Node_Path_Transform(_x, _y, _group = noone) : Node(_x, _y, _group) cons
|
||||||
if(!is_struct(path) || !struct_has(path, "getPointRatio"))
|
if(!is_struct(path) || !struct_has(path, "getPointRatio"))
|
||||||
return out;
|
return out;
|
||||||
|
|
||||||
var _p = path.getPointRatio(_rat, ind).clone();
|
var _p = path.getPointRatio(_rat, ind);
|
||||||
|
|
||||||
_p.x = anc[0] + (_p.x - anc[0]) * sca[0];
|
_p.x = anc[0] + (_p.x - anc[0]) * sca[0];
|
||||||
_p.y = anc[1] + (_p.y - anc[1]) * sca[1];
|
_p.y = anc[1] + (_p.y - anc[1]) * sca[1];
|
||||||
|
@ -94,7 +120,6 @@ function Node_Path_Transform(_x, _y, _group = noone) : Node(_x, _y, _group) cons
|
||||||
out.y = _pp[1] + pos[1];
|
out.y = _pp[1] + pos[1];
|
||||||
|
|
||||||
cached_pos[? _cKey] = out.clone();
|
cached_pos[? _cKey] = out.clone();
|
||||||
|
|
||||||
return out;
|
return out;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -47,8 +47,8 @@ function Node_Path_Wave(_x, _y, _group = noone) : Node(_x, _y, _group) construct
|
||||||
|
|
||||||
wig_map = noone;
|
wig_map = noone;
|
||||||
amp_curve = noone;
|
amp_curve = noone;
|
||||||
p0 = new __vec2();
|
|
||||||
p = new __vec2();
|
p = new __vec2();
|
||||||
|
p0 = new __vec2();
|
||||||
p1 = new __vec2();
|
p1 = new __vec2();
|
||||||
|
|
||||||
cached_pos = ds_map_create();
|
cached_pos = ds_map_create();
|
||||||
|
@ -58,9 +58,7 @@ function Node_Path_Wave(_x, _y, _group = noone) : Node(_x, _y, _group) construct
|
||||||
if(_path && struct_has(_path, "drawOverlay")) _path.drawOverlay(hover, active, _x, _y, _s, _mx, _my, _snx, _sny);
|
if(_path && struct_has(_path, "drawOverlay")) _path.drawOverlay(hover, active, _x, _y, _s, _mx, _my, _snx, _sny);
|
||||||
|
|
||||||
draw_set_color(COLORS._main_icon);
|
draw_set_color(COLORS._main_icon);
|
||||||
|
|
||||||
var _amo = getLineCount();
|
var _amo = getLineCount();
|
||||||
|
|
||||||
for( var i = 0; i < _amo; i++ ) {
|
for( var i = 0; i < _amo; i++ ) {
|
||||||
var _len = getLength(i);
|
var _len = getLength(i);
|
||||||
var _stp = 1 / clamp(_len * _s, 1, 64);
|
var _stp = 1 / clamp(_len * _s, 1, 64);
|
||||||
|
@ -72,7 +70,7 @@ function Node_Path_Wave(_x, _y, _group = noone) : Node(_x, _y, _group) construct
|
||||||
nx = _x + p.x * _s;
|
nx = _x + p.x * _s;
|
||||||
ny = _y + p.y * _s;
|
ny = _y + p.y * _s;
|
||||||
|
|
||||||
if(j > 0) draw_line_width(ox, oy, nx, ny, 3);
|
if(j > 0) draw_line_width(ox, oy, nx, ny, 1);
|
||||||
|
|
||||||
ox = nx;
|
ox = nx;
|
||||||
oy = ny;
|
oy = ny;
|
||||||
|
@ -116,7 +114,7 @@ function Node_Path_Wave(_x, _y, _group = noone) : Node(_x, _y, _group) construct
|
||||||
static getPointRatio = function(_rat, ind = 0, out = undefined) {
|
static getPointRatio = function(_rat, ind = 0, out = undefined) {
|
||||||
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
if(out == undefined) out = new __vec2(); else { out.x = 0; out.y = 0; }
|
||||||
|
|
||||||
var _cKey = $"{_rat},{ind}";
|
var _cKey = $"{string_format(_rat, 0, 6)},{ind}";
|
||||||
if(ds_map_exists(cached_pos, _cKey)) {
|
if(ds_map_exists(cached_pos, _cKey)) {
|
||||||
var _p = cached_pos[? _cKey];
|
var _p = cached_pos[? _cKey];
|
||||||
out.x = _p.x;
|
out.x = _p.x;
|
||||||
|
|
|
@ -393,16 +393,18 @@ function Panel_Collection() : PanelContent() constructor {
|
||||||
if(sprite_exists(_node.spr)) {
|
if(sprite_exists(_node.spr)) {
|
||||||
var sw = sprite_get_width(_node.spr);
|
var sw = sprite_get_width(_node.spr);
|
||||||
var sh = sprite_get_height(_node.spr);
|
var sh = sprite_get_height(_node.spr);
|
||||||
var ss = (grid_size - ui(10)) * PREFERENCES.collection_scale / max(sw, sh);
|
var ss = (grid_size - ui(12)) * PREFERENCES.collection_scale / max(sw, sh);
|
||||||
|
|
||||||
var xo = (sprite_get_xoffset(_node.spr) - sw / 2) * ss;
|
var xo = (sprite_get_xoffset(_node.spr) - sw / 2) * ss;
|
||||||
var yo = (sprite_get_yoffset(_node.spr) - sh / 2) * ss;
|
var yo = (sprite_get_yoffset(_node.spr) - sh / 2) * ss;
|
||||||
var sx = _boxx + grid_size / 2 + xo;
|
var sx = _boxx + grid_size / 2 + xo;
|
||||||
var sy = yy + grid_size / 2 + yo;
|
var sy = yy + grid_size / 2 + yo;
|
||||||
|
|
||||||
|
gpu_set_texfilter(true);
|
||||||
BLEND_ALPHA_MULP
|
BLEND_ALPHA_MULP
|
||||||
draw_sprite_ext(_node.spr, frame, sx, sy, ss, ss, 0, c_white, 1);
|
draw_sprite_ext(_node.spr, frame, sx, sy, ss, ss, 0, c_white, 1);
|
||||||
BLEND_NORMAL
|
BLEND_NORMAL
|
||||||
|
gpu_set_texfilter(false);
|
||||||
} else
|
} else
|
||||||
draw_sprite_ui_uniform(THEME.group, 0, _boxx + grid_size / 2, yy + grid_size / 2, 1, c_white);
|
draw_sprite_ui_uniform(THEME.group, 0, _boxx + grid_size / 2, yy + grid_size / 2, 1, c_white);
|
||||||
|
|
||||||
|
@ -562,7 +564,7 @@ function Panel_Collection() : PanelContent() constructor {
|
||||||
nodeListPane.hover_content = true;
|
nodeListPane.hover_content = true;
|
||||||
|
|
||||||
var ww = nodeListPane.surface_w;
|
var ww = nodeListPane.surface_w;
|
||||||
var _hg = ui(28);
|
var _hg = line_get_height(f_p1, 4);
|
||||||
var _hov = pHOVER && nodeListPane.hover;
|
var _hov = pHOVER && nodeListPane.hover;
|
||||||
var _foc = pFOCUS;
|
var _foc = pFOCUS;
|
||||||
|
|
||||||
|
@ -583,7 +585,7 @@ function Panel_Collection() : PanelContent() constructor {
|
||||||
nodeListPane_page = i;
|
nodeListPane_page = i;
|
||||||
}
|
}
|
||||||
|
|
||||||
draw_set_text(f_p0, fa_left, fa_center, nodeListPane_page == i? COLORS._main_text_accent : COLORS._main_text_inner);
|
draw_set_text(f_p1, fa_left, fa_center, nodeListPane_page == i? COLORS._main_text_accent : COLORS._main_text_inner);
|
||||||
draw_text_add(ui(24), _y + _hg / 2, _nam);
|
draw_text_add(ui(24), _y + _hg / 2, _nam);
|
||||||
|
|
||||||
_y += _hg;
|
_y += _hg;
|
||||||
|
@ -667,13 +669,15 @@ function Panel_Collection() : PanelContent() constructor {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var ss = grid_size / (max(sprite_get_width(_node.spr), sprite_get_height(_node.spr)) + 16);
|
var ss = (grid_size - ui(16)) / max(sprite_get_width(_node.spr), sprite_get_height(_node.spr));
|
||||||
var sx = _boxx + grid_size / 2;
|
var sx = _boxx + grid_size / 2;
|
||||||
var sy = yy + grid_size / 2;
|
var sy = yy + grid_size / 2;
|
||||||
|
|
||||||
|
gpu_set_texfilter(true);
|
||||||
BLEND_ALPHA_MULP
|
BLEND_ALPHA_MULP
|
||||||
draw_sprite_ext(_node.spr, 0, sx, sy, ss, ss, 0, c_white, 1);
|
draw_sprite_ext(_node.spr, 0, sx, sy, ss, ss, 0, c_white, 1);
|
||||||
BLEND_NORMAL
|
BLEND_NORMAL
|
||||||
|
gpu_set_texfilter(false);
|
||||||
|
|
||||||
var fav = struct_exists(global.FAV_NODES, _node.node);
|
var fav = struct_exists(global.FAV_NODES, _node.node);
|
||||||
if(fav) draw_sprite_ui_uniform(THEME.star, 0, _boxx + grid_size - ui(8), yy + grid_size - ui(8), 0.7, COLORS._main_accent, 1.);
|
if(fav) draw_sprite_ui_uniform(THEME.star, 0, _boxx + grid_size - ui(8), yy + grid_size - ui(8), 0.7, COLORS._main_accent, 1.);
|
||||||
|
|
|
@ -40,6 +40,9 @@ function textBox(_input, _onModify) : textInput(_input, _onModify) constructor {
|
||||||
|
|
||||||
label = "";
|
label = "";
|
||||||
labelColor = COLORS._main_text_sub;
|
labelColor = COLORS._main_text_sub;
|
||||||
|
labelSpr = noone;
|
||||||
|
labelSprIndex = 0;
|
||||||
|
labelAlign = fa_left;
|
||||||
highlight_color = -1;
|
highlight_color = -1;
|
||||||
highlight_alpha = 1;
|
highlight_alpha = 1;
|
||||||
|
|
||||||
|
@ -574,6 +577,10 @@ function textBox(_input, _onModify) : textInput(_input, _onModify) constructor {
|
||||||
draw_set_alpha(0.5);
|
draw_set_alpha(0.5);
|
||||||
draw_text_add(_x + padding, _y + _h / 2, label);
|
draw_text_add(_x + padding, _y + _h / 2, label);
|
||||||
draw_set_alpha(1);
|
draw_set_alpha(1);
|
||||||
|
|
||||||
|
} else if(labelSpr != noone) {
|
||||||
|
var _ix = labelAlign == fa_left? _x + _h / 2 : _x + _w - _h / 2;
|
||||||
|
draw_sprite_ext(labelSpr, labelSprIndex, _ix, _y + _h / 2, 1, 1, 0, labelColor, 1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,13 +1,118 @@
|
||||||
#define PI 3.14159265359
|
#define PI 3.14159265359
|
||||||
|
|
||||||
|
#ifdef _YY_HLSL11_
|
||||||
|
#define CURVE_MAX 1024
|
||||||
|
#else
|
||||||
|
#define CURVE_MAX 512
|
||||||
|
#endif
|
||||||
|
|
||||||
varying vec2 v_vTexcoord;
|
varying vec2 v_vTexcoord;
|
||||||
varying vec4 v_vColour;
|
varying vec4 v_vColour;
|
||||||
|
|
||||||
uniform vec2 dimension;
|
uniform vec2 dimension;
|
||||||
uniform int subdivision;
|
uniform int subdivision;
|
||||||
|
uniform int clip;
|
||||||
|
uniform int matchIndex;
|
||||||
|
|
||||||
|
uniform float w_curve[CURVE_MAX];
|
||||||
|
uniform int w_amount;
|
||||||
|
|
||||||
uniform vec2 point1[1024];
|
uniform vec2 point1[1024];
|
||||||
uniform vec2 point2[1024];
|
uniform vec2 point2[1024];
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
|
float eval_curve_segment_t(in float _y0, in float ax0, in float ay0, in float bx1, in float by1, in float _y1, in float prog) {
|
||||||
|
return _y0 * pow(1. - prog, 3.) +
|
||||||
|
ay0 * 3. * pow(1. - prog, 2.) * prog +
|
||||||
|
by1 * 3. * (1. - prog) * pow(prog, 2.) +
|
||||||
|
_y1 * pow(prog, 3.);
|
||||||
|
}
|
||||||
|
|
||||||
|
float eval_curve_segment_x(in float _y0, in float ax0, in float ay0, in float bx1, in float by1, in float _y1, in float _x) {
|
||||||
|
float st = 0.;
|
||||||
|
float ed = 1.;
|
||||||
|
float _prec = 0.0001;
|
||||||
|
|
||||||
|
float _xt = _x;
|
||||||
|
int _binRep = 8;
|
||||||
|
|
||||||
|
if(_x <= 0.) return _y0;
|
||||||
|
if(_x >= 1.) return _y1;
|
||||||
|
if(_y0 == ay0 && _y0 == by1 && _y0 == _y1) return _y0;
|
||||||
|
|
||||||
|
for(int i = 0; i < _binRep; i++) {
|
||||||
|
float _ftx = 3. * pow(1. - _xt, 2.) * _xt * ax0
|
||||||
|
+ 3. * (1. - _xt) * pow(_xt, 2.) * bx1
|
||||||
|
+ pow(_xt, 3.);
|
||||||
|
|
||||||
|
if(abs(_ftx - _x) < _prec)
|
||||||
|
return eval_curve_segment_t(_y0, ax0, ay0, bx1, by1, _y1, _xt);
|
||||||
|
|
||||||
|
if(_xt < _x) st = _xt;
|
||||||
|
else ed = _xt;
|
||||||
|
|
||||||
|
_xt = (st + ed) / 2.;
|
||||||
|
}
|
||||||
|
|
||||||
|
int _newRep = 16;
|
||||||
|
|
||||||
|
for(int i = 0; i < _newRep; i++) {
|
||||||
|
float slope = ( 9. * ax0 - 9. * bx1 + 3.) * _xt * _xt
|
||||||
|
+ (-12. * ax0 + 6. * bx1) * _xt
|
||||||
|
+ 3. * ax0;
|
||||||
|
float _ftx = 3. * pow(1. - _xt, 2.) * _xt * ax0
|
||||||
|
+ 3. * (1. - _xt) * pow(_xt, 2.) * bx1
|
||||||
|
+ pow(_xt, 3.)
|
||||||
|
- _x;
|
||||||
|
|
||||||
|
_xt -= _ftx / slope;
|
||||||
|
|
||||||
|
if(abs(_ftx) < _prec)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
_xt = clamp(_xt, 0., 1.);
|
||||||
|
return eval_curve_segment_t(_y0, ax0, ay0, bx1, by1, _y1, _xt);
|
||||||
|
}
|
||||||
|
|
||||||
|
float curveEval(in float[CURVE_MAX] curve, in int amo, in float _x) {
|
||||||
|
|
||||||
|
int _shf = amo - int(floor(float(amo) / 6.) * 6.);
|
||||||
|
int _segs = (amo - _shf) / 6 - 1;
|
||||||
|
float _shift = _shf > 0? curve[0] : 0.;
|
||||||
|
float _scale = _shf > 1? curve[1] : 1.;
|
||||||
|
|
||||||
|
_x = _x / _scale - _shift;
|
||||||
|
_x = clamp(_x, 0., 1.);
|
||||||
|
|
||||||
|
for( int i = 0; i < _segs; i++ ) {
|
||||||
|
int ind = _shf + i * 6;
|
||||||
|
float _x0 = curve[ind + 2];
|
||||||
|
float _y0 = curve[ind + 3];
|
||||||
|
//float bx0 = _x0 + curve[ind + 0];
|
||||||
|
//float by0 = _y0 + curve[ind + 1];
|
||||||
|
float ax0 = _x0 + curve[ind + 4];
|
||||||
|
float ay0 = _y0 + curve[ind + 5];
|
||||||
|
|
||||||
|
float _x1 = curve[ind + 6 + 2];
|
||||||
|
float _y1 = curve[ind + 6 + 3];
|
||||||
|
float bx1 = _x1 + curve[ind + 6 + 0];
|
||||||
|
float by1 = _y1 + curve[ind + 6 + 1];
|
||||||
|
//float ax1 = _x1 + curve[ind + 6 + 4];
|
||||||
|
//float ay1 = _y1 + curve[ind + 6 + 5];
|
||||||
|
|
||||||
|
if(_x < _x0) continue;
|
||||||
|
if(_x > _x1) continue;
|
||||||
|
|
||||||
|
return eval_curve_segment_x(_y0, ax0, ay0, bx1, by1, _y1, (_x - _x0) / (_x1 - _x0));
|
||||||
|
}
|
||||||
|
|
||||||
|
return curve[0];
|
||||||
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
vec2 pointToLine(in vec2 p, in vec2 l0, in vec2 l1) {
|
vec2 pointToLine(in vec2 p, in vec2 l0, in vec2 l1) {
|
||||||
float l2 = pow(l0.x - l1.x, 2.) + pow(l0.y - l1.y, 2.);
|
float l2 = pow(l0.x - l1.x, 2.) + pow(l0.y - l1.y, 2.);
|
||||||
if (l2 == 0.) return l0;
|
if (l2 == 0.) return l0;
|
||||||
|
@ -26,32 +131,60 @@ float pointOnLine(in vec2 p, in vec2 l0, in vec2 l1) {
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
float tsign (in vec2 p1, in vec2 p2, in vec2 p3) { return (p1.x - p3.x) * (p2.y - p3.y) - (p2.x - p3.x) * (p1.y - p3.y); }
|
||||||
|
|
||||||
|
bool pointInTriangle(in vec2 p, in vec2 t0, in vec2 t1, in vec2 t2) {
|
||||||
|
float d1 = tsign(p, t0, t1);
|
||||||
|
float d2 = tsign(p, t1, t2);
|
||||||
|
float d3 = tsign(p, t2, t0);
|
||||||
|
|
||||||
|
bool has_neg = (d1 < 0.) || (d2 < 0.) || (d3 < 0.);
|
||||||
|
bool has_pos = (d1 > 0.) || (d2 > 0.) || (d3 > 0.);
|
||||||
|
|
||||||
|
return !(has_neg && has_pos);
|
||||||
|
}
|
||||||
|
|
||||||
|
bool intersect(in vec2 p, in vec2 l0, in vec2 l1) {
|
||||||
|
float s0 = sign(p.y - l0.y);
|
||||||
|
float s1 = sign(l1.y - p.y);
|
||||||
|
bool ins = s0 == s1;
|
||||||
|
return ins;
|
||||||
|
}
|
||||||
|
|
||||||
void main() {
|
void main() {
|
||||||
vec2 px = v_vTexcoord * dimension;
|
vec2 px = v_vTexcoord * dimension;
|
||||||
|
|
||||||
float dF = dimension.x + dimension.y;
|
float dF = dimension.x + dimension.y;
|
||||||
vec2 pF = point1[0];
|
vec2 pF = point1[0];
|
||||||
vec2 pF0 = point1[0];
|
vec2 pF0 = point1[0], pF1;
|
||||||
vec2 pF1 = vec2(0.);
|
|
||||||
|
|
||||||
float dT = dimension.x + dimension.y;
|
float dT = dimension.x + dimension.y;
|
||||||
vec2 pT = point2[0];
|
vec2 pT = point2[0];
|
||||||
vec2 pT0 = point2[0];
|
vec2 pT0 = point2[0], pT1;
|
||||||
vec2 pT1 = vec2(0.);
|
|
||||||
|
|
||||||
|
bool inFrom = false;
|
||||||
|
bool inTo = false;
|
||||||
|
float a = 0.;
|
||||||
|
|
||||||
|
if(matchIndex == 0) {
|
||||||
for(int i = 1; i < subdivision; i++) {
|
for(int i = 1; i < subdivision; i++) {
|
||||||
pF1 = point1[i];
|
pF1 = point1[i];
|
||||||
pT1 = point2[i];
|
pT1 = point2[i];
|
||||||
|
|
||||||
vec2 f = pointToLine(px, pF0, pF1);
|
vec2 f = pointToLine(px, pF0, pF1);
|
||||||
|
vec2 t = pointToLine(px, pT0, pT1);
|
||||||
|
|
||||||
|
if(intersect(px, pF0, pF1) && f.x >= px.x) inFrom = !inFrom;
|
||||||
|
if(intersect(px, pT0, pT1) && t.x >= px.x) inTo = !inTo;
|
||||||
|
|
||||||
float _f = distance(px, f);
|
float _f = distance(px, f);
|
||||||
|
float _t = distance(px, t);
|
||||||
|
|
||||||
if(_f <= dF) {
|
if(_f <= dF) {
|
||||||
dF = _f;
|
dF = _f;
|
||||||
pF = f;
|
pF = f;
|
||||||
}
|
}
|
||||||
|
|
||||||
vec2 t = pointToLine(px, pT0, pT1);
|
|
||||||
float _t = distance(px, t);
|
|
||||||
if(_t <= dT) {
|
if(_t <= dT) {
|
||||||
dT = _t;
|
dT = _t;
|
||||||
pT = t;
|
pT = t;
|
||||||
|
@ -61,10 +194,47 @@ void main() {
|
||||||
pT0 = pT1;
|
pT0 = pT1;
|
||||||
}
|
}
|
||||||
|
|
||||||
float a = dF / (dF + dT);
|
a = dF / (dF + dT);
|
||||||
// float l = pointOnLine(px, pF, pT);
|
|
||||||
// if(l < 0.) a = 0.;
|
} else {
|
||||||
// else if(l > 1.) a = 1.;
|
float ma = 99999.;
|
||||||
|
float index = 0.;
|
||||||
|
bool infr = false;
|
||||||
|
a = 0.;
|
||||||
|
|
||||||
|
for(int i = 1; i < subdivision; i++) {
|
||||||
|
pF1 = point1[i];
|
||||||
|
pT1 = point2[i];
|
||||||
|
|
||||||
|
vec2 f = pointToLine(px, pF0, pF1);
|
||||||
|
vec2 t = pointToLine(px, pT0, pT1);
|
||||||
|
|
||||||
|
if(intersect(px, pF0, pF1) && f.x >= px.x) inFrom = !inFrom;
|
||||||
|
if(intersect(px, pT0, pT1) && t.x >= px.x) inTo = !inTo;
|
||||||
|
|
||||||
|
bool inRegion = pointInTriangle(px, pF0, pF1, pT0) || pointInTriangle(px, pF1, pT0, pT1);
|
||||||
|
|
||||||
|
pF0 = pF1;
|
||||||
|
pT0 = pT1;
|
||||||
|
|
||||||
|
if(!inRegion) continue;
|
||||||
|
|
||||||
|
float _f = distance(px, f);
|
||||||
|
float _t = distance(px, t);
|
||||||
|
|
||||||
|
a = max(a, _f / (_f + _t));
|
||||||
|
|
||||||
|
infr = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(infr) inFrom = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(clip == 1) {
|
||||||
|
if( inTo) a = 1.;
|
||||||
|
else if(!inFrom) a = 0.;
|
||||||
|
}
|
||||||
|
a = curveEval(w_curve, w_amount, a);
|
||||||
|
|
||||||
gl_FragColor = vec4(vec3(a), 1.);
|
gl_FragColor = vec4(vec3(a), 1.);
|
||||||
}
|
}
|
||||||
|
|
After Width: | Height: | Size: 596 B |
After Width: | Height: | Size: 581 B |
After Width: | Height: | Size: 595 B |
Before Width: | Height: | Size: 865 B |
After Width: | Height: | Size: 592 B |
After Width: | Height: | Size: 596 B |
After Width: | Height: | Size: 581 B |
After Width: | Height: | Size: 595 B |
Before Width: | Height: | Size: 865 B |
After Width: | Height: | Size: 592 B |
|
@ -2,24 +2,27 @@
|
||||||
"$GMSprite":"",
|
"$GMSprite":"",
|
||||||
"%Name":"s_inspector_corner",
|
"%Name":"s_inspector_corner",
|
||||||
"bboxMode":0,
|
"bboxMode":0,
|
||||||
"bbox_bottom":92,
|
"bbox_bottom":15,
|
||||||
"bbox_left":3,
|
"bbox_left":0,
|
||||||
"bbox_right":92,
|
"bbox_right":15,
|
||||||
"bbox_top":3,
|
"bbox_top":0,
|
||||||
"collisionKind":1,
|
"collisionKind":1,
|
||||||
"collisionTolerance":0,
|
"collisionTolerance":0,
|
||||||
"DynamicTexturePage":false,
|
"DynamicTexturePage":false,
|
||||||
"edgeFiltering":false,
|
"edgeFiltering":false,
|
||||||
"For3D":false,
|
"For3D":false,
|
||||||
"frames":[
|
"frames":[
|
||||||
{"$GMSpriteFrame":"","%Name":"7d6f3c9b-816b-473c-9609-7afe7c287375","name":"7d6f3c9b-816b-473c-9609-7afe7c287375","resourceType":"GMSpriteFrame","resourceVersion":"2.0",},
|
{"$GMSpriteFrame":"","%Name":"e83b87fa-8548-47d9-9730-795354c9cfab","name":"e83b87fa-8548-47d9-9730-795354c9cfab","resourceType":"GMSpriteFrame","resourceVersion":"2.0",},
|
||||||
|
{"$GMSpriteFrame":"","%Name":"489b53d7-5462-40c6-ae0b-a79548a50391","name":"489b53d7-5462-40c6-ae0b-a79548a50391","resourceType":"GMSpriteFrame","resourceVersion":"2.0",},
|
||||||
|
{"$GMSpriteFrame":"","%Name":"1a3b04c9-2e80-4197-ad8a-fb08eecac59b","name":"1a3b04c9-2e80-4197-ad8a-fb08eecac59b","resourceType":"GMSpriteFrame","resourceVersion":"2.0",},
|
||||||
|
{"$GMSpriteFrame":"","%Name":"138da7d0-5a9b-40c2-a77a-5225382e6964","name":"138da7d0-5a9b-40c2-a77a-5225382e6964","resourceType":"GMSpriteFrame","resourceVersion":"2.0",},
|
||||||
],
|
],
|
||||||
"gridX":0,
|
"gridX":0,
|
||||||
"gridY":0,
|
"gridY":0,
|
||||||
"height":96,
|
"height":16,
|
||||||
"HTile":false,
|
"HTile":false,
|
||||||
"layers":[
|
"layers":[
|
||||||
{"$GMImageLayer":"","%Name":"c0fbcaac-9a99-4788-bf26-4e7d3abe43a7","blendMode":0,"displayName":"default","isLocked":false,"name":"c0fbcaac-9a99-4788-bf26-4e7d3abe43a7","opacity":100.0,"resourceType":"GMImageLayer","resourceVersion":"2.0","visible":true,},
|
{"$GMImageLayer":"","%Name":"f4daaca1-3dcd-4fc2-9fae-5dcbab5b23cd","blendMode":0,"displayName":"default","isLocked":false,"name":"f4daaca1-3dcd-4fc2-9fae-5dcbab5b23cd","opacity":100.0,"resourceType":"GMImageLayer","resourceVersion":"2.0","visible":true,},
|
||||||
],
|
],
|
||||||
"name":"s_inspector_corner",
|
"name":"s_inspector_corner",
|
||||||
"nineSlice":null,
|
"nineSlice":null,
|
||||||
|
@ -49,7 +52,7 @@
|
||||||
},
|
},
|
||||||
"eventStubScript":null,
|
"eventStubScript":null,
|
||||||
"eventToFunction":{},
|
"eventToFunction":{},
|
||||||
"length":1.0,
|
"length":4.0,
|
||||||
"lockOrigin":false,
|
"lockOrigin":false,
|
||||||
"moments":{
|
"moments":{
|
||||||
"$KeyframeStore<MomentsEventKeyframe>":"",
|
"$KeyframeStore<MomentsEventKeyframe>":"",
|
||||||
|
@ -69,14 +72,23 @@
|
||||||
"tracks":[
|
"tracks":[
|
||||||
{"$GMSpriteFramesTrack":"","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"$KeyframeStore<SpriteFrameKeyframe>":"","Keyframes":[
|
{"$GMSpriteFramesTrack":"","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"$KeyframeStore<SpriteFrameKeyframe>":"","Keyframes":[
|
||||||
{"$Keyframe<SpriteFrameKeyframe>":"","Channels":{
|
{"$Keyframe<SpriteFrameKeyframe>":"","Channels":{
|
||||||
"0":{"$SpriteFrameKeyframe":"","Id":{"name":"7d6f3c9b-816b-473c-9609-7afe7c287375","path":"sprites/s_inspector_corner/s_inspector_corner.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",},
|
"0":{"$SpriteFrameKeyframe":"","Id":{"name":"e83b87fa-8548-47d9-9730-795354c9cfab","path":"sprites/s_inspector_corner/s_inspector_corner.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",},
|
||||||
},"Disabled":false,"id":"941a0f5d-b28e-4048-91da-114760d8380f","IsCreationKey":false,"Key":0.0,"Length":1.0,"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"2.0","Stretch":false,},
|
},"Disabled":false,"id":"711e0c69-a7f6-4904-98f0-7e8f49e55088","IsCreationKey":false,"Key":0.0,"Length":1.0,"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"2.0","Stretch":false,},
|
||||||
|
{"$Keyframe<SpriteFrameKeyframe>":"","Channels":{
|
||||||
|
"0":{"$SpriteFrameKeyframe":"","Id":{"name":"489b53d7-5462-40c6-ae0b-a79548a50391","path":"sprites/s_inspector_corner/s_inspector_corner.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",},
|
||||||
|
},"Disabled":false,"id":"0d575809-e630-40b8-8a85-0528e99c7c3e","IsCreationKey":false,"Key":1.0,"Length":1.0,"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"2.0","Stretch":false,},
|
||||||
|
{"$Keyframe<SpriteFrameKeyframe>":"","Channels":{
|
||||||
|
"0":{"$SpriteFrameKeyframe":"","Id":{"name":"1a3b04c9-2e80-4197-ad8a-fb08eecac59b","path":"sprites/s_inspector_corner/s_inspector_corner.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",},
|
||||||
|
},"Disabled":false,"id":"03a68097-6315-4121-82ed-231fa6c71547","IsCreationKey":false,"Key":2.0,"Length":1.0,"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"2.0","Stretch":false,},
|
||||||
|
{"$Keyframe<SpriteFrameKeyframe>":"","Channels":{
|
||||||
|
"0":{"$SpriteFrameKeyframe":"","Id":{"name":"138da7d0-5a9b-40c2-a77a-5225382e6964","path":"sprites/s_inspector_corner/s_inspector_corner.yy",},"resourceType":"SpriteFrameKeyframe","resourceVersion":"2.0",},
|
||||||
|
},"Disabled":false,"id":"80bb90fa-5b1c-4d10-b92f-4f809d15c50b","IsCreationKey":false,"Key":3.0,"Length":1.0,"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"2.0","Stretch":false,},
|
||||||
],"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"2.0",},"modifiers":[],"name":"frames","resourceType":"GMSpriteFramesTrack","resourceVersion":"2.0","spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
|
],"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"2.0",},"modifiers":[],"name":"frames","resourceType":"GMSpriteFramesTrack","resourceVersion":"2.0","spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
|
||||||
],
|
],
|
||||||
"visibleRange":null,
|
"visibleRange":null,
|
||||||
"volume":1.0,
|
"volume":1.0,
|
||||||
"xorigin":48,
|
"xorigin":8,
|
||||||
"yorigin":48,
|
"yorigin":8,
|
||||||
},
|
},
|
||||||
"swatchColours":null,
|
"swatchColours":null,
|
||||||
"swfPrecision":0.5,
|
"swfPrecision":0.5,
|
||||||
|
@ -86,5 +98,5 @@
|
||||||
},
|
},
|
||||||
"type":0,
|
"type":0,
|
||||||
"VTile":false,
|
"VTile":false,
|
||||||
"width":96,
|
"width":16,
|
||||||
}
|
}
|