Expression array.

This commit is contained in:
Tanasart 2023-07-15 20:01:29 +02:00
parent fc9c47aac7
commit 30628f1386
142 changed files with 1990 additions and 101 deletions

View file

@ -163,6 +163,9 @@
{"name":"sprites","order":12,"path":"folders/sprites.yy",},
{"name":"gameframe","order":2,"path":"folders/sprites/gameframe.yy",},
{"name":"misc","order":3,"path":"folders/sprites/misc.yy",},
{"name":"VCT","order":14,"path":"folders/VCT.yy",},
{"name":"biterator","order":2,"path":"folders/VCT/biterator.yy",},
{"name":"widget","order":3,"path":"folders/VCT/widget.yy",},
{"name":"widgets","order":5,"path":"folders/widgets.yy",},
],
"ResourceOrderSettings": [
@ -233,6 +236,7 @@
{"name":"node_functions","order":2,"path":"scripts/node_functions/node_functions.yy",},
{"name":"node_math","order":1,"path":"scripts/node_math/node_math.yy",},
{"name":"fd_rectangle_replace_material_advanced","order":15,"path":"scripts/fd_rectangle_replace_material_advanced/fd_rectangle_replace_material_advanced.yy",},
{"name":"s_biterator_knob","order":5,"path":"sprites/s_biterator_knob/s_biterator_knob.yy",},
{"name":"array_functions","order":2,"path":"scripts/array_functions/array_functions.yy",},
{"name":"sh_blur_final","order":2,"path":"shaders/sh_blur_final/sh_blur_final.yy",},
{"name":"s_window_frame","order":6,"path":"sprites/s_window_frame/s_window_frame.yy",},
@ -286,6 +290,7 @@
{"name":"fd_rectangle_get_collision_mask_sprite","order":4,"path":"scripts/fd_rectangle_get_collision_mask_sprite/fd_rectangle_get_collision_mask_sprite.yy",},
{"name":"node_flip","order":13,"path":"scripts/node_flip/node_flip.yy",},
{"name":"sh_FXAA","order":52,"path":"shaders/sh_FXAA/sh_FXAA.yy",},
{"name":"s_biterator_slider","order":6,"path":"sprites/s_biterator_slider/s_biterator_slider.yy",},
{"name":"node_gradient_points","order":18,"path":"scripts/node_gradient_points/node_gradient_points.yy",},
{"name":"s_button_hide_fill","order":4,"path":"sprites/s_button_hide_fill/s_button_hide_fill.yy",},
{"name":"_f_code","order":9,"path":"fonts/_f_code/_f_code.yy",},
@ -318,6 +323,7 @@
{"name":"sh_polar","order":1,"path":"shaders/sh_polar/sh_polar.yy",},
{"name":"s_node_warp_mesh","order":10,"path":"sprites/s_node_warp_mesh/s_node_warp_mesh.yy",},
{"name":"sh_pixel_cloud","order":13,"path":"shaders/sh_pixel_cloud/sh_pixel_cloud.yy",},
{"name":"s_biterator_b_grey_short","order":8,"path":"sprites/s_biterator_b_grey_short/s_biterator_b_grey_short.yy",},
{"name":"printer","order":2,"path":"scripts/printer/printer.yy",},
{"name":"sh_de_stray","order":16,"path":"shaders/sh_de_stray/sh_de_stray.yy",},
{"name":"sh_chromatic_aberration","order":31,"path":"shaders/sh_chromatic_aberration/sh_chromatic_aberration.yy",},
@ -563,6 +569,7 @@
{"name":"sh_normal","order":1,"path":"shaders/sh_normal/sh_normal.yy",},
{"name":"s_node_time_map","order":39,"path":"sprites/s_node_time_map/s_node_time_map.yy",},
{"name":"node_crop","order":7,"path":"scripts/node_crop/node_crop.yy",},
{"name":"s_biterator_tab_content","order":14,"path":"sprites/s_biterator_tab_content/s_biterator_tab_content.yy",},
{"name":"fd_rectangle_get_material_maccormack_weight","order":11,"path":"scripts/fd_rectangle_get_material_maccormack_weight/fd_rectangle_get_material_maccormack_weight.yy",},
{"name":"s_node_lua_compute","order":17,"path":"sprites/s_node_lua_compute/s_node_lua_compute.yy",},
{"name":"buttonPalette","order":6,"path":"scripts/buttonPalette/buttonPalette.yy",},
@ -592,6 +599,7 @@
{"name":"s_node_array_set","order":9,"path":"sprites/s_node_array_set/s_node_array_set.yy",},
{"name":"node_noise_cell","order":2,"path":"scripts/node_noise_cell/node_noise_cell.yy",},
{"name":"__background_get_internal","order":2,"path":"scripts/__background_get_internal/__background_get_internal.yy",},
{"name":"s_biterator_b_labels","order":9,"path":"sprites/s_biterator_b_labels/s_biterator_b_labels.yy",},
{"name":"sh_combine_hsv","order":41,"path":"shaders/sh_combine_hsv/sh_combine_hsv.yy",},
{"name":"s_node_array_insert","order":4,"path":"sprites/s_node_array_insert/s_node_array_insert.yy",},
{"name":"addon_lua","order":1,"path":"scripts/addon_lua/addon_lua.yy",},
@ -610,6 +618,7 @@
{"name":"buffer_object","order":1,"path":"scripts/buffer_object/buffer_object.yy",},
{"name":"s_node_audio_trim","order":3,"path":"sprites/s_node_audio_trim/s_node_audio_trim.yy",},
{"name":"node_color_from_hsv","order":8,"path":"scripts/node_color_from_hsv/node_color_from_hsv.yy",},
{"name":"s_biterator_tab_inactive","order":11,"path":"sprites/s_biterator_tab_inactive/s_biterator_tab_inactive.yy",},
{"name":"s_node_image_copy","order":3,"path":"sprites/s_node_image_copy/s_node_image_copy.yy",},
{"name":"node_boolean","order":17,"path":"scripts/node_boolean/node_boolean.yy",},
{"name":"node_grid_tri","order":3,"path":"scripts/node_grid_tri/node_grid_tri.yy",},
@ -618,6 +627,7 @@
{"name":"node_fluid_turbulence","order":10,"path":"scripts/node_fluid_turbulence/node_fluid_turbulence.yy",},
{"name":"sh_sdf","order":1,"path":"shaders/sh_sdf/sh_sdf.yy",},
{"name":"slider","order":15,"path":"scripts/slider/slider.yy",},
{"name":"biterator","order":1,"path":"scripts/biterator/biterator.yy",},
{"name":"s_node_convolution","order":48,"path":"sprites/s_node_convolution/s_node_convolution.yy",},
{"name":"fd_rectangle_get_velocity_time_step","order":25,"path":"scripts/fd_rectangle_get_velocity_time_step/fd_rectangle_get_velocity_time_step.yy",},
{"name":"node_string_regex_match","order":10,"path":"scripts/node_string_regex_match/node_string_regex_match.yy",},
@ -944,6 +954,7 @@
{"name":"s_node_FXAA","order":57,"path":"sprites/s_node_FXAA/s_node_FXAA.yy",},
{"name":"logger","order":1,"path":"scripts/logger/logger.yy",},
{"name":"s_node_blur_directional","order":11,"path":"sprites/s_node_blur_directional/s_node_blur_directional.yy",},
{"name":"s_biterator_dim_label","order":10,"path":"sprites/s_biterator_dim_label/s_biterator_dim_label.yy",},
{"name":"s_node_average","order":50,"path":"sprites/s_node_average/s_node_average.yy",},
{"name":"s_node_sprite_sheet","order":1,"path":"sprites/s_node_sprite_sheet/s_node_sprite_sheet.yy",},
{"name":"s_node_text_length","order":9,"path":"sprites/s_node_text_length/s_node_text_length.yy",},
@ -999,6 +1010,7 @@
{"name":"sh_blur_alpha","order":1,"path":"shaders/sh_blur_alpha/sh_blur_alpha.yy",},
{"name":"value_snap","order":10,"path":"scripts/value_snap/value_snap.yy",},
{"name":"file_dropper","order":1,"path":"extensions/file_dropper/file_dropper.yy",},
{"name":"s_biterator_b_shape_idle","order":3,"path":"sprites/s_biterator_b_shape_idle/s_biterator_b_shape_idle.yy",},
{"name":"sh_mirror_mask","order":8,"path":"shaders/sh_mirror_mask/sh_mirror_mask.yy",},
{"name":"node_export","order":10,"path":"scripts/node_export/node_export.yy",},
{"name":"controlPointBox","order":21,"path":"scripts/controlPointBox/controlPointBox.yy",},
@ -1066,6 +1078,7 @@
{"name":"s_node_fluidSim_add_collider","order":1,"path":"sprites/s_node_fluidSim_add_collider/s_node_fluidSim_add_collider.yy",},
{"name":"node_3d_plane","order":4,"path":"scripts/node_3d_plane/node_3d_plane.yy",},
{"name":"node_display_text","order":3,"path":"scripts/node_display_text/node_display_text.yy",},
{"name":"s_biterator_b_shape_press","order":4,"path":"sprites/s_biterator_b_shape_press/s_biterator_b_shape_press.yy",},
{"name":"node_strand_update","order":3,"path":"scripts/node_strand_update/node_strand_update.yy",},
{"name":"sh_grid_noise","order":8,"path":"shaders/sh_grid_noise/sh_grid_noise.yy",},
{"name":"draw_set_blend_mode","order":1,"path":"scripts/draw_set_blend_mode/draw_set_blend_mode.yy",},
@ -1094,6 +1107,7 @@
{"name":"node_fluid_apply_velo","order":5,"path":"scripts/node_fluid_apply_velo/node_fluid_apply_velo.yy",},
{"name":"s_node_path_transform","order":5,"path":"sprites/s_node_path_transform/s_node_path_transform.yy",},
{"name":"s_node_path_blend","order":1,"path":"sprites/s_node_path_blend/s_node_path_blend.yy",},
{"name":"s_biterator_tab_active","order":12,"path":"sprites/s_biterator_tab_active/s_biterator_tab_active.yy",},
{"name":"s_node_3d_extrude","order":2,"path":"sprites/s_node_3d_extrude/s_node_3d_extrude.yy",},
{"name":"buttonGradient","order":4,"path":"scripts/buttonGradient/buttonGradient.yy",},
{"name":"sh_draw_downsample","order":2,"path":"shaders/sh_draw_downsample/sh_draw_downsample.yy",},
@ -1170,6 +1184,7 @@
{"name":"node_palette_replacement","order":2,"path":"scripts/node_palette_replacement/node_palette_replacement.yy",},
{"name":"s_node_scatter","order":19,"path":"sprites/s_node_scatter/s_node_scatter.yy",},
{"name":"s_node_bokeh","order":51,"path":"sprites/s_node_bokeh/s_node_bokeh.yy",},
{"name":"s_biterator_toggler","order":13,"path":"sprites/s_biterator_toggler/s_biterator_toggler.yy",},
{"name":"sh_vertex_depth_pass","order":6,"path":"shaders/sh_vertex_depth_pass/sh_vertex_depth_pass.yy",},
{"name":"sh_curve","order":3,"path":"shaders/sh_curve/sh_curve.yy",},
{"name":"sh_warp_4points","order":9,"path":"shaders/sh_warp_4points/sh_warp_4points.yy",},
@ -1185,10 +1200,12 @@
{"name":"s_node_wav_file_write","order":17,"path":"sprites/s_node_wav_file_write/s_node_wav_file_write.yy",},
{"name":"s_node_3d_cylinder","order":1,"path":"sprites/s_node_3d_cylinder/s_node_3d_cylinder.yy",},
{"name":"node_strand_break","order":9,"path":"scripts/node_strand_break/node_strand_break.yy",},
{"name":"s_biterator_b_grey_long","order":7,"path":"sprites/s_biterator_b_grey_long/s_biterator_b_grey_long.yy",},
{"name":"s_node_vec_split","order":6,"path":"sprites/s_node_vec_split/s_node_vec_split.yy",},
{"name":"s_node_regex_replace","order":10,"path":"sprites/s_node_regex_replace/s_node_regex_replace.yy",},
{"name":"paddingBox","order":9,"path":"scripts/paddingBox/paddingBox.yy",},
{"name":"fd_rectangle_set_visualization_shader","order":18,"path":"scripts/fd_rectangle_set_visualization_shader/fd_rectangle_set_visualization_shader.yy",},
{"name":"s_biterator_bg","order":2,"path":"sprites/s_biterator_bg/s_biterator_bg.yy",},
{"name":"s_node_ase_layer","order":14,"path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",},
{"name":"_f_p1","order":1,"path":"fonts/_f_p1/_f_p1.yy",},
{"name":"tuple_functions","order":5,"path":"scripts/tuple_functions/tuple_functions.yy",},
@ -1209,6 +1226,7 @@
{"name":"node_invert","order":6,"path":"scripts/node_invert/node_invert.yy",},
{"name":"o_dialog_history","order":3,"path":"objects/o_dialog_history/o_dialog_history.yy",},
{"name":"draw_background_stretched","order":5,"path":"scripts/draw_background_stretched/draw_background_stretched.yy",},
{"name":"s_biterator_canvas","order":15,"path":"sprites/s_biterator_canvas/s_biterator_canvas.yy",},
{"name":"node_array_csv_parse","order":27,"path":"scripts/node_array_csv_parse/node_array_csv_parse.yy",},
{"name":"node_tunnel_out","order":7,"path":"scripts/node_tunnel_out/node_tunnel_out.yy",},
{"name":"s_node_array_shuffle","order":10,"path":"sprites/s_node_array_shuffle/s_node_array_shuffle.yy",},
@ -1278,6 +1296,7 @@
{"name":"node_noise_fbm","order":3,"path":"scripts/node_noise_fbm/node_noise_fbm.yy",},
{"name":"sh_channel_V","order":6,"path":"shaders/sh_channel_V/sh_channel_V.yy",},
{"name":"__shapes","order":3,"path":"scripts/__shapes/__shapes.yy",},
{"name":"panel_VCT","order":1,"path":"scripts/panel_VCT/panel_VCT.yy",},
{"name":"node_alpha_to_grey","order":3,"path":"scripts/node_alpha_to_grey/node_alpha_to_grey.yy",},
{"name":"shell_helper","order":20,"path":"scripts/shell_helper/shell_helper.yy",},
{"name":"node_strand_collision","order":8,"path":"scripts/node_strand_collision/node_strand_collision.yy",},

View file

@ -199,6 +199,9 @@
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"texture","folderPath":"folders/sprites/texture.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"Steamworks","folderPath":"folders/Steamworks.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"UGC","folderPath":"folders/Steamworks/UGC.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"VCT","folderPath":"folders/VCT.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"biterator","folderPath":"folders/VCT/biterator.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"widget","folderPath":"folders/VCT/widget.yy",},
{"resourceType":"GMFolder","resourceVersion":"1.0","name":"widgets","folderPath":"folders/widgets.yy",},
],
"IncludedFiles": [
@ -373,6 +376,7 @@
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_tunnel.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_undo.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_unit_ref.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_vct.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_vfx.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_view_group.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_view_mode_strip2.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/icon",},
@ -477,9 +481,13 @@
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_bone_tool_add.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_bone_tool_detach.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_bone_tool_IK.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_bone_tool_move.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_bone_tool_remove.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_bone_tool_scale.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_bone_tool_transform.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_channel.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_selection_circle.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_selection_rectangle.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_tools_bucket.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_tools_ellip_fill.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
{"resourceType":"GMIncludedFile","resourceVersion":"1.0","name":"s_canvas_tools_ellip.png","CopyToMask":-1,"filePath":"datafiles/data/themes/default/graphics/tool",},
@ -730,6 +738,7 @@
{"id":{"name":"node_functions","path":"scripts/node_functions/node_functions.yy",},},
{"id":{"name":"node_math","path":"scripts/node_math/node_math.yy",},},
{"id":{"name":"fd_rectangle_replace_material_advanced","path":"scripts/fd_rectangle_replace_material_advanced/fd_rectangle_replace_material_advanced.yy",},},
{"id":{"name":"s_biterator_knob","path":"sprites/s_biterator_knob/s_biterator_knob.yy",},},
{"id":{"name":"array_functions","path":"scripts/array_functions/array_functions.yy",},},
{"id":{"name":"sh_blur_final","path":"shaders/sh_blur_final/sh_blur_final.yy",},},
{"id":{"name":"s_window_frame","path":"sprites/s_window_frame/s_window_frame.yy",},},
@ -792,6 +801,7 @@
{"id":{"name":"fd_rectangle_get_collision_mask_sprite","path":"scripts/fd_rectangle_get_collision_mask_sprite/fd_rectangle_get_collision_mask_sprite.yy",},},
{"id":{"name":"node_flip","path":"scripts/node_flip/node_flip.yy",},},
{"id":{"name":"sh_FXAA","path":"shaders/sh_FXAA/sh_FXAA.yy",},},
{"id":{"name":"s_biterator_slider","path":"sprites/s_biterator_slider/s_biterator_slider.yy",},},
{"id":{"name":"shader_functions","path":"scripts/shader_functions/shader_functions.yy",},},
{"id":{"name":"node_gradient_points","path":"scripts/node_gradient_points/node_gradient_points.yy",},},
{"id":{"name":"s_button_hide_fill","path":"sprites/s_button_hide_fill/s_button_hide_fill.yy",},},
@ -829,6 +839,7 @@
{"id":{"name":"sh_polar","path":"shaders/sh_polar/sh_polar.yy",},},
{"id":{"name":"s_node_warp_mesh","path":"sprites/s_node_warp_mesh/s_node_warp_mesh.yy",},},
{"id":{"name":"sh_pixel_cloud","path":"shaders/sh_pixel_cloud/sh_pixel_cloud.yy",},},
{"id":{"name":"s_biterator_b_grey_short","path":"sprites/s_biterator_b_grey_short/s_biterator_b_grey_short.yy",},},
{"id":{"name":"printer","path":"scripts/printer/printer.yy",},},
{"id":{"name":"node_iterate","path":"scripts/node_iterate/node_iterate.yy",},},
{"id":{"name":"sh_de_stray","path":"shaders/sh_de_stray/sh_de_stray.yy",},},
@ -1112,6 +1123,7 @@
{"id":{"name":"sh_normal","path":"shaders/sh_normal/sh_normal.yy",},},
{"id":{"name":"s_node_time_map","path":"sprites/s_node_time_map/s_node_time_map.yy",},},
{"id":{"name":"node_crop","path":"scripts/node_crop/node_crop.yy",},},
{"id":{"name":"s_biterator_tab_content","path":"sprites/s_biterator_tab_content/s_biterator_tab_content.yy",},},
{"id":{"name":"fd_rectangle_get_material_maccormack_weight","path":"scripts/fd_rectangle_get_material_maccormack_weight/fd_rectangle_get_material_maccormack_weight.yy",},},
{"id":{"name":"s_node_lua_compute","path":"sprites/s_node_lua_compute/s_node_lua_compute.yy",},},
{"id":{"name":"buttonPalette","path":"scripts/buttonPalette/buttonPalette.yy",},},
@ -1143,6 +1155,7 @@
{"id":{"name":"s_node_array_set","path":"sprites/s_node_array_set/s_node_array_set.yy",},},
{"id":{"name":"node_noise_cell","path":"scripts/node_noise_cell/node_noise_cell.yy",},},
{"id":{"name":"__background_get_internal","path":"scripts/__background_get_internal/__background_get_internal.yy",},},
{"id":{"name":"s_biterator_b_labels","path":"sprites/s_biterator_b_labels/s_biterator_b_labels.yy",},},
{"id":{"name":"sh_combine_hsv","path":"shaders/sh_combine_hsv/sh_combine_hsv.yy",},},
{"id":{"name":"s_node_array_insert","path":"sprites/s_node_array_insert/s_node_array_insert.yy",},},
{"id":{"name":"addon_lua","path":"scripts/addon_lua/addon_lua.yy",},},
@ -1158,12 +1171,14 @@
{"id":{"name":"node_number","path":"scripts/node_number/node_number.yy",},},
{"id":{"name":"node_to_text","path":"scripts/node_to_text/node_to_text.yy",},},
{"id":{"name":"node_palette","path":"scripts/node_palette/node_palette.yy",},},
{"id":{"name":"vct_button","path":"scripts/vct_button/vct_button.yy",},},
{"id":{"name":"buttonColor","path":"scripts/buttonColor/buttonColor.yy",},},
{"id":{"name":"notification_system","path":"scripts/notification_system/notification_system.yy",},},
{"id":{"name":"buffer_object","path":"scripts/buffer_object/buffer_object.yy",},},
{"id":{"name":"s_node_audio_trim","path":"sprites/s_node_audio_trim/s_node_audio_trim.yy",},},
{"id":{"name":"sh_shadow_cast","path":"shaders/sh_shadow_cast/sh_shadow_cast.yy",},},
{"id":{"name":"node_color_from_hsv","path":"scripts/node_color_from_hsv/node_color_from_hsv.yy",},},
{"id":{"name":"s_biterator_tab_inactive","path":"sprites/s_biterator_tab_inactive/s_biterator_tab_inactive.yy",},},
{"id":{"name":"s_node_image_copy","path":"sprites/s_node_image_copy/s_node_image_copy.yy",},},
{"id":{"name":"node_boolean","path":"scripts/node_boolean/node_boolean.yy",},},
{"id":{"name":"node_grid_tri","path":"scripts/node_grid_tri/node_grid_tri.yy",},},
@ -1172,6 +1187,7 @@
{"id":{"name":"node_fluid_turbulence","path":"scripts/node_fluid_turbulence/node_fluid_turbulence.yy",},},
{"id":{"name":"sh_sdf","path":"shaders/sh_sdf/sh_sdf.yy",},},
{"id":{"name":"slider","path":"scripts/slider/slider.yy",},},
{"id":{"name":"biterator","path":"scripts/biterator/biterator.yy",},},
{"id":{"name":"s_node_convolution","path":"sprites/s_node_convolution/s_node_convolution.yy",},},
{"id":{"name":"fd_rectangle_get_velocity_time_step","path":"scripts/fd_rectangle_get_velocity_time_step/fd_rectangle_get_velocity_time_step.yy",},},
{"id":{"name":"node_string_regex_match","path":"scripts/node_string_regex_match/node_string_regex_match.yy",},},
@ -1191,6 +1207,7 @@
{"id":{"name":"node_image_gif","path":"scripts/node_image_gif/node_image_gif.yy",},},
{"id":{"name":"node_iterator_each_output","path":"scripts/node_iterator_each_output/node_iterator_each_output.yy",},},
{"id":{"name":"o_dialog_anim_time_scaler","path":"objects/o_dialog_anim_time_scaler/o_dialog_anim_time_scaler.yy",},},
{"id":{"name":"node_VCT","path":"scripts/node_VCT/node_VCT.yy",},},
{"id":{"name":"boneObject","path":"scripts/boneObject/boneObject.yy",},},
{"id":{"name":"s_node_strandSim_render_texture","path":"sprites/s_node_strandSim_render_texture/s_node_strandSim_render_texture.yy",},},
{"id":{"name":"sh_fd_advect_material_a_8_glsl","path":"shaders/sh_fd_advect_material_a_8_glsl/sh_fd_advect_material_a_8_glsl.yy",},},
@ -1536,6 +1553,7 @@
{"id":{"name":"s_node_blur_directional","path":"sprites/s_node_blur_directional/s_node_blur_directional.yy",},},
{"id":{"name":"distance_to_line","path":"scripts/distance_to_line/distance_to_line.yy",},},
{"id":{"name":"globalvar_drawer","path":"scripts/globalvar_drawer/globalvar_drawer.yy",},},
{"id":{"name":"s_biterator_dim_label","path":"sprites/s_biterator_dim_label/s_biterator_dim_label.yy",},},
{"id":{"name":"s_node_average","path":"sprites/s_node_average/s_node_average.yy",},},
{"id":{"name":"s_node_sprite_sheet","path":"sprites/s_node_sprite_sheet/s_node_sprite_sheet.yy",},},
{"id":{"name":"s_node_text_length","path":"sprites/s_node_text_length/s_node_text_length.yy",},},
@ -1605,6 +1623,7 @@
{"id":{"name":"BBMOD_DualQuaternion","path":"scripts/BBMOD_DualQuaternion/BBMOD_DualQuaternion.yy",},},
{"id":{"name":"node_sdf","path":"scripts/node_sdf/node_sdf.yy",},},
{"id":{"name":"file_dropper","path":"extensions/file_dropper/file_dropper.yy",},},
{"id":{"name":"s_biterator_b_shape_idle","path":"sprites/s_biterator_b_shape_idle/s_biterator_b_shape_idle.yy",},},
{"id":{"name":"compat_path_array","path":"scripts/compat_path_array/compat_path_array.yy",},},
{"id":{"name":"sh_mirror_mask","path":"shaders/sh_mirror_mask/sh_mirror_mask.yy",},},
{"id":{"name":"node_export","path":"scripts/node_export/node_export.yy",},},
@ -1682,6 +1701,7 @@
{"id":{"name":"node_3d_plane","path":"scripts/node_3d_plane/node_3d_plane.yy",},},
{"id":{"name":"node_display_text","path":"scripts/node_display_text/node_display_text.yy",},},
{"id":{"name":"s_kenney","path":"sprites/s_kenney/s_kenney.yy",},},
{"id":{"name":"s_biterator_b_shape_press","path":"sprites/s_biterator_b_shape_press/s_biterator_b_shape_press.yy",},},
{"id":{"name":"testing_script","path":"scripts/testing_script/testing_script.yy",},},
{"id":{"name":"node_feedback","path":"scripts/node_feedback/node_feedback.yy",},},
{"id":{"name":"node_strand_update","path":"scripts/node_strand_update/node_strand_update.yy",},},
@ -1718,6 +1738,7 @@
{"id":{"name":"s_node_sdf","path":"sprites/s_node_sdf/s_node_sdf.yy",},},
{"id":{"name":"s_node_path_blend","path":"sprites/s_node_path_blend/s_node_path_blend.yy",},},
{"id":{"name":"preview_overlay_scalar","path":"scripts/preview_overlay_scalar/preview_overlay_scalar.yy",},},
{"id":{"name":"s_biterator_tab_active","path":"sprites/s_biterator_tab_active/s_biterator_tab_active.yy",},},
{"id":{"name":"s_node_3d_extrude","path":"sprites/s_node_3d_extrude/s_node_3d_extrude.yy",},},
{"id":{"name":"buttonGradient","path":"scripts/buttonGradient/buttonGradient.yy",},},
{"id":{"name":"sh_draw_downsample","path":"shaders/sh_draw_downsample/sh_draw_downsample.yy",},},
@ -1805,6 +1826,7 @@
{"id":{"name":"node_palette_replacement","path":"scripts/node_palette_replacement/node_palette_replacement.yy",},},
{"id":{"name":"s_node_scatter","path":"sprites/s_node_scatter/s_node_scatter.yy",},},
{"id":{"name":"s_node_bokeh","path":"sprites/s_node_bokeh/s_node_bokeh.yy",},},
{"id":{"name":"s_biterator_toggler","path":"sprites/s_biterator_toggler/s_biterator_toggler.yy",},},
{"id":{"name":"sh_vertex_depth_pass","path":"shaders/sh_vertex_depth_pass/sh_vertex_depth_pass.yy",},},
{"id":{"name":"sh_curve","path":"shaders/sh_curve/sh_curve.yy",},},
{"id":{"name":"sh_warp_4points","path":"shaders/sh_warp_4points/sh_warp_4points.yy",},},
@ -1821,10 +1843,12 @@
{"id":{"name":"s_node_wav_file_write","path":"sprites/s_node_wav_file_write/s_node_wav_file_write.yy",},},
{"id":{"name":"s_node_3d_cylinder","path":"sprites/s_node_3d_cylinder/s_node_3d_cylinder.yy",},},
{"id":{"name":"node_strand_break","path":"scripts/node_strand_break/node_strand_break.yy",},},
{"id":{"name":"s_biterator_b_grey_long","path":"sprites/s_biterator_b_grey_long/s_biterator_b_grey_long.yy",},},
{"id":{"name":"s_node_vec_split","path":"sprites/s_node_vec_split/s_node_vec_split.yy",},},
{"id":{"name":"s_node_regex_replace","path":"sprites/s_node_regex_replace/s_node_regex_replace.yy",},},
{"id":{"name":"paddingBox","path":"scripts/paddingBox/paddingBox.yy",},},
{"id":{"name":"fd_rectangle_set_visualization_shader","path":"scripts/fd_rectangle_set_visualization_shader/fd_rectangle_set_visualization_shader.yy",},},
{"id":{"name":"s_biterator_bg","path":"sprites/s_biterator_bg/s_biterator_bg.yy",},},
{"id":{"name":"addonPanel","path":"scripts/addonPanel/addonPanel.yy",},},
{"id":{"name":"s_node_ase_layer","path":"sprites/s_node_ase_layer/s_node_ase_layer.yy",},},
{"id":{"name":"_f_p1","path":"fonts/_f_p1/_f_p1.yy",},},
@ -1849,6 +1873,7 @@
{"id":{"name":"o_dialog_history","path":"objects/o_dialog_history/o_dialog_history.yy",},},
{"id":{"name":"draw_background_stretched","path":"scripts/draw_background_stretched/draw_background_stretched.yy",},},
{"id":{"name":"s_node_path","path":"sprites/s_node_path/s_node_path.yy",},},
{"id":{"name":"s_biterator_canvas","path":"sprites/s_biterator_canvas/s_biterator_canvas.yy",},},
{"id":{"name":"node_array_csv_parse","path":"scripts/node_array_csv_parse/node_array_csv_parse.yy",},},
{"id":{"name":"node_tunnel_out","path":"scripts/node_tunnel_out/node_tunnel_out.yy",},},
{"id":{"name":"s_node_array_shuffle","path":"sprites/s_node_array_shuffle/s_node_array_shuffle.yy",},},
@ -1930,6 +1955,7 @@
{"id":{"name":"node_noise_fbm","path":"scripts/node_noise_fbm/node_noise_fbm.yy",},},
{"id":{"name":"sh_channel_V","path":"shaders/sh_channel_V/sh_channel_V.yy",},},
{"id":{"name":"__shapes","path":"scripts/__shapes/__shapes.yy",},},
{"id":{"name":"panel_VCT","path":"scripts/panel_VCT/panel_VCT.yy",},},
{"id":{"name":"node_alpha_to_grey","path":"scripts/node_alpha_to_grey/node_alpha_to_grey.yy",},},
{"id":{"name":"shell_helper","path":"scripts/shell_helper/shell_helper.yy",},},
{"id":{"name":"node_strand_collision","path":"scripts/node_strand_collision/node_strand_collision.yy",},},

Binary file not shown.

View file

@ -254,7 +254,7 @@
"panel_inspector_reset": "Reset value",
"panel_inspector_remove": "Remove animation",
"panel_inspector_add": "Add animation",
"panel_inspector_extract": "Extract to node",
"panel_inspector_extract": "Extract...",
"panel_inspector_out_visible": "Outputs visibility",
"panel_inspector_execute": "Execute node",
"panel_inspector_cache_desp": "This node cache output for performance.\nClick to clear all cached frames in this node.",

Binary file not shown.

View file

@ -23,6 +23,7 @@ event_inherited();
dialog_h = content.h + content.showHeader * (padding * 2 + title_height);
dialog_w_min = content.min_w;
dialog_h_min = content.min_h;
dialog_resizable = content.resizable;
content.in_dialog = true;

View file

@ -161,18 +161,21 @@ event_inherited();
var spr = _project.getSpr();
if(spr) {
var gw = grid_width - ui(16);
var gh = grid_heigh - ui(16);
var gw = grid_width - ui(8);
var gh = grid_heigh - ui(8);
var sw = sprite_get_width(spr);
var sh = sprite_get_height(spr);
var s = 1;
var s = min(1, gw / sw, gh / sh);
var ox = (sprite_get_xoffset(spr) - sw / 2) * s / 2;
var oy = (sprite_get_yoffset(spr) - sh / 2) * s / 2;
var ox = (sprite_get_xoffset(spr) - sw / 2) * s;
var oy = (sprite_get_yoffset(spr) - sh / 2) * s;
draw_sprite_ui_uniform(spr, 0, _boxx + grid_width / 2 + ox, yy + grid_heigh / 2 + ox, s);
var _sx = _boxx + grid_width / 2 + ox;
var _sy = yy + grid_heigh / 2 + ox;
draw_sprite_ui_uniform(spr, 0, _sx, _sy, s);
}
var tx = _boxx + grid_width / 2;

View file

@ -0,0 +1,152 @@
function Node_Biterator(_x, _y, _group = noone) : Node_VCT(_x, _y, _group) constructor {
name = "Biterator";
vct = new Biterator(self);
}
function Biterator(node) : VCT(node) constructor {
panel = Biterator_Panel;
dimension = VCT_var(VALUE_TYPE.integer, 0);
shape = VCT_var(VALUE_TYPE.integer, 0);
pos_x = VCT_var(VALUE_TYPE.integer, 0);
pos_y = VCT_var(VALUE_TYPE.integer, 0);
sca_x = VCT_var(VALUE_TYPE.integer, 0);
sca_y = VCT_var(VALUE_TYPE.integer, 0);
function process() {
var _dimension = dimension.get();
var _dim = _dimension == 0? 8 : 16;
var surf = surface_create(_dim, _dim);
surface_set_target(surf);
DRAW_CLEAR
surface_reset_target();
return surf;
}
}
function Biterator_Panel(vct) : PanelVCT(vct) constructor {
title = "Biterator";
w = ui(608);
h = ui(462);
page = 0;
function drawContent(panel) {
draw_clear(c_white);
draw_sprite_ext(s_biterator_bg, 0, 0, 0, 2, 2, 0, c_white, 1);
draw_sprite_ext(s_biterator_tab_content, page, 129 * 2, 115 * 2, 2, 2, 0, c_white, 1);
draw_sprite_ext(s_biterator_canvas, vct.dimension.get(), 105 * 2, 21 * 2, 2, 2, 0, c_white, 1);
for( var i = 0; i < 5; i++ ) {
var bx = 13 * 2 + 32 * i;
var by = 12 * 2;
if(vct_button(bx, by, [ vct.shape.get() == i? s_biterator_b_shape_press : s_biterator_b_shape_idle, s_biterator_b_shape_press ], i))
vct.shape.set(i);
}
#region settings
var kx = vct.dimension.get()? 246 * 2 : 210 * 2;
var ky = 50 * 2;
draw_sprite_ext(s_biterator_b_grey_long, 0, kx, ky, 2, 2, 0, c_white, 1);
if(vct_button(kx, ky, s_biterator_b_grey_long,, s_biterator_dim_label, vct.dimension.get()))
vct.dimension.set(!vct.dimension.get());
var kx = 210 * 2;
var ky = 74 * 2;
if(vct_button(kx, ky, s_biterator_b_grey_short,, s_biterator_b_labels, 0))
vct.reset();
var kx = 237 * 2;
var ky = 74 * 2;
if(vct_button(kx, ky, s_biterator_b_grey_short,, s_biterator_b_labels, 1))
vct.reset();
var kx = 264 * 2;
var ky = 74 * 2;
if(vct_button(kx, ky, s_biterator_b_grey_short,, s_biterator_b_labels, 2))
vct.reset();
#endregion
#region shape
var kx = 33 * 2;
var ky = 41 * 2;
draw_sprite_ext(s_biterator_knob, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 51 * 2;
var ky = 41 * 2;
draw_sprite_ext(s_biterator_knob, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 69 * 2;
var ky = 41 * 2;
draw_sprite_ext(s_biterator_knob, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 20 * 2;
var ky = 63 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 33 * 2;
var ky = 63 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 46 * 2;
var ky = 63 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 59 * 2;
var ky = 63 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 72 * 2;
var ky = 63 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 85 * 2;
var ky = 63 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
#endregion
#region color
var kx = 40 * 2;
var ky = 208 * 2;
draw_sprite_ext(s_biterator_knob, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = 65 * 2;
var ky = 208 * 2;
draw_sprite_ext(s_biterator_knob, 0, kx, ky, 2, 2, 0, c_white, 1);
#endregion
#region pages
for( var i = 0; i < 4; i++ ) {
var kx = 102 * 2;
var ky = (115 + 27 * i) * 2;
var ss = i == page? s_biterator_tab_active : s_biterator_tab_inactive;
if(vct_button(kx, ky, [ss, s_biterator_tab_active], i))
page = i;
}
#endregion
if(page == 0) { #region kernel
for( var i = 0; i < 4; i++ ) {
var kx = (141 + 39 * i) * 2;
var ky = 122 * 2;
draw_sprite_ext(s_biterator_toggler, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = (145 + 39 * i) * 2;
var ky = 184 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
var kx = (162 + 39 * i) * 2;
var ky = 184 * 2;
draw_sprite_ext(s_biterator_slider, 0, kx, ky, 2, 2, 0, c_white, 1);
}
#endregion
}
}
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "biterator",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
}

View file

@ -19,6 +19,12 @@ function draw_sprite_stretched_override(spr, ind, _x, _y, w = 1, h = 1) {
__draw_sprite_stretched(spr, ind, round(_x), round(_y), round(w), round(h));
}
function draw_sprite_ext_add(spr, ind, _x, _y, xscale = 1, yscale = 1, rot = 0, color = c_white, alpha = 1) {
BLEND_ADD
__draw_sprite_ext(spr, ind, round(_x), round(_y), xscale, yscale, rot, color, alpha);
BLEND_NORMAL
}
function draw_sprite_stretched_points(spr, ind, _x0, _y0, _x1, _y1) {
var _xs = round(min(_x0, _x1));
var _ys = round(min(_y0, _y1));

View file

@ -0,0 +1,57 @@
function Node_VCT(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) constructor {
name = "VCT";
icon = THEME.vct;
color = COLORS.node_blend_vct;
vct = new VCT(self);
inputs[| 0] = nodeValue("Editor", self, JUNCTION_CONNECT.input, VALUE_TYPE.integer, 0)
.setDisplay(VALUE_DISPLAY.button, [ function() {
vct.createDialog();
}, "Editor" ]);
outputs[| 0] = nodeValue("Surface out", self, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone);
input_display_list = [ 0,
["Output", false],
];
input_display_len = array_length(input_display_list);
input_fix_len = ds_list_size(inputs);
data_length = 1;
function createNewInput(key = "") {
var index = ds_list_size(inputs);
var _s = floor((index - input_fix_len) / data_length);
var name = string_title(string_replace_all(key, "_", " "));
var _var = vct[$ key];
inputs[| index] = nodeValue(name, self, JUNCTION_CONNECT.input, _var.type, 0)
.setDisplay(_var.disp, _var.disp_data);
inputs[| index].extra_data.key = key;
array_append(input_display_list, [ index ]);
}
static process_data = function(_outSurf, _data, _output_index, _array_index) {
for( var i = 1; i < array_length(_data); i++ )
vct[$ inputs[| i].extra_data.key].set(_data[i]);
return vct.process();
}
static onDoubleClick = function(panel) {
vct.createDialog();
}
static doSerialize = function(_map) {
_map.vct = vct.serialize();
}
static postDeserialize = function() {
var _inputs = load_map.inputs;
vct.deserialize(load_map.vct);
for(var i = input_fix_len; i < array_length(_inputs); i += data_length)
createNewInput(_inputs[i].extra_data.key);
}
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "node_VCT",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "VCT",
"path": "folders/VCT.yy",
},
}

View file

@ -136,6 +136,7 @@ function Node_Armature(_x, _y, _group = noone) : Node(_x, _y, _group) constructo
})]);
tools = [
new NodeTool( [ "Move", "Scale" ], [ THEME.bone_tool_move, THEME.bone_tool_scale ] ),
new NodeTool( "Add bones", THEME.bone_tool_add ),
new NodeTool( "Remove bones", THEME.bone_tool_remove ),
new NodeTool( "Detach bones", THEME.bone_tool_detach ),
@ -150,6 +151,9 @@ function Node_Armature(_x, _y, _group = noone) : Node(_x, _y, _group) constructo
builder_mx = 0;
builder_my = 0;
builder_moving = false;
builder_scaling = false;
bone_dragging = noone;
ik_dragging = noone;
@ -274,7 +278,114 @@ function Node_Armature(_x, _y, _group = noone) : Node(_x, _y, _group) constructo
}
triggerRender();
} else if(isUsingTool(0)) { // builder
}
if(isUsingTool("Move")) {
_b.draw(attributes, false, _x, _y, _s, _mx, _my);
var bbox = _b.bbox();
var x0 = _x + bbox[0] * _s;
var y0 = _y + bbox[1] * _s;
var x1 = _x + bbox[2] * _s;
var y1 = _y + bbox[3] * _s;
if(builder_moving) {
var dx = (mx - builder_mx) / _s;
var dy = (my - builder_my) / _s;
builder_mx = mx;
builder_my = my;
var _bx = lengthdir_x(_b.distance, _b.direction) + dx;
var _by = lengthdir_y(_b.distance, _b.direction) + dy;
_b.distance = point_distance(0, 0, _bx, _by);
_b.direction = point_direction(0, 0, _bx, _by);
if(mouse_release(mb_left))
builder_moving = false;
draw_set_color(COLORS._main_accent);
draw_rectangle(x0, y0, x1, y1, true);
} else {
if(point_in_rectangle(_mx, _my, x0, y0, x1, y1)) {
draw_set_color(COLORS._main_accent);
if(mouse_press(mb_left, active)) {
builder_moving = true;
builder_mx = mx;
builder_my = my;
}
} else
draw_set_color(c_white);
draw_set_alpha(0.5);
draw_rectangle(x0, y0, x1, y1, true);
draw_set_alpha(1);
}
} else if(isUsingTool("Scale")) {
_b.draw(attributes, false, _x, _y, _s, _mx, _my);
var bbox = _b.bbox();
var x0 = _x + bbox[0] * _s;
var y0 = _y + bbox[1] * _s;
var x1 = _x + bbox[2] * _s;
var y1 = _y + bbox[3] * _s;
draw_set_color(c_white);
draw_set_alpha(0.5);
draw_rectangle(x0, y0, x1, y1, true);
draw_set_alpha(1);
var cx = (x0 + x1) / 2;
var cy = (y0 + y1) / 2;
draw_set_color(COLORS._main_accent);
draw_set_alpha(0.5 + builder_scaling * 0.5);
draw_line(cx, cy, _mx, _my);
draw_set_alpha(1);
if(builder_scaling) {
var _so = point_distance(cx, cy, builder_mx, builder_my);
var _sn = point_distance(cx, cy, _mx, _my);
var _ss = 1 + (_sn - _so) / max(_so, 8);
builder_mx = _mx;
builder_my = _my;
var _bst = ds_stack_create();
ds_stack_push(_bst, _b);
while(!ds_stack_empty(_bst)) {
var __b = ds_stack_pop(_bst);
for( var i = 0; i < array_length(__b.childs); i++ )
ds_stack_push(_bst, __b.childs[i]);
__b.distance *= _ss;
__b.length *= _ss;
}
ds_stack_destroy(_bst);
var bbox_n = _b.bbox();
var _ox = (bbox[0] + bbox[2]) / 2 - (bbox_n[0] + bbox_n[2]) / 2;
var _oy = (bbox[1] + bbox[3]) / 2 - (bbox_n[1] + bbox_n[3]) / 2;
var _bx = lengthdir_x(_b.distance, _b.direction) + _ox;
var _by = lengthdir_y(_b.distance, _b.direction) + _oy;
_b.distance = point_distance(0, 0, _bx, _by);
_b.direction = point_direction(0, 0, _bx, _by);
if(mouse_release(mb_left))
builder_scaling = false;
} else {
if(mouse_press(mb_left, active)) {
builder_scaling = true;
builder_mx = _mx;
builder_my = _my;
}
}
} else if(isUsingTool("Add bones")) { // builder
anchor_selecting = _b.draw(attributes, active * 0b111, _x, _y, _s, _mx, _my, anchor_selecting);
if(mouse_press(mb_left, active)) {
@ -312,7 +423,7 @@ function Node_Armature(_x, _y, _group = noone) : Node(_x, _y, _group) constructo
draw_sprite_ext(THEME.bone_tool_add, 1, _mx + 24, _my + 24, 1, 1, 0, c_white, 1);
} else if(anchor_selecting[1] == 2)
draw_sprite_ext(THEME.bone_tool_add, 0, _mx + 24, _my + 24, 1, 1, 0, c_white, 1);
} else if(isUsingTool(1)) { //remover
} else if(isUsingTool("Remove bones")) { //remover
anchor_selecting = _b.draw(attributes, active * 0b100, _x, _y, _s, _mx, _my, anchor_selecting);
if(anchor_selecting != noone && anchor_selecting[1] == 2 && anchor_selecting[0].parent != noone && mouse_press(mb_left, active)) {
@ -333,7 +444,7 @@ function Node_Armature(_x, _y, _group = noone) : Node(_x, _y, _group) constructo
if(anchor_selecting != noone)
draw_sprite_ext(THEME.bone_tool_remove, 1, _mx + 24, _my + 24, 1, 1, 0, c_white, 1);
} else if(isUsingTool(2)) { //detach
} else if(isUsingTool("Detach bones")) { //detach
anchor_selecting = _b.draw(attributes, active * 0b100, _x, _y, _s, _mx, _my, anchor_selecting);
if(anchor_selecting != noone && anchor_selecting[1] == 2 && mouse_press(mb_left, active)) {
@ -353,7 +464,7 @@ function Node_Armature(_x, _y, _group = noone) : Node(_x, _y, _group) constructo
builder_my = my;
UNDO_HOLDING = true;
}
} else if(isUsingTool(3)) { //IK
} else if(isUsingTool("IK")) { //IK
anchor_selecting = _b.draw(attributes, active * 0b100, _x, _y, _s, _mx, _my, anchor_selecting);
if(anchor_selecting != noone && anchor_selecting[1] == 2 && mouse_press(mb_left, active)) {

View file

@ -65,7 +65,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
for(var i = input_fix_len; i < ds_list_size(inputs) - data_length; i += data_length) {
index++;
var _surf = current_data[i];
var _id = inputs[| i].extra_data[0];
var _id = inputs[| i].extra_data.bone_id;
if(_id == "") continue;
if(ds_map_exists(surfMap, _id))
@ -142,7 +142,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
if(_hover && point_in_rectangle(_m[0], _m[1], _sx, _sy, _sx + _sw * _ss, _sy + _sh * _ss)) {
if(mouse_press(mb_left, _focus)) {
layer_dragging = _sid;
inputs[| input_fix_len + _sid * data_length].extra_data[0] = "";
inputs[| input_fix_len + _sid * data_length].extra_data.bone_id = "";
}
draw_set_color(COLORS._main_accent);
@ -173,7 +173,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
if(layer_dragging != noone && hovering && mouse_release(mb_left)) {
var _lind = input_fix_len + layer_dragging * data_length;
inputs[| _lind].extra_data[0] = hovering.ID;
inputs[| _lind].extra_data.bone_id = hovering.ID;
layer_dragging = noone;
triggerRender();
@ -290,7 +290,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
}
}
var binded = inputs[| i].extra_data[0] != "";
var binded = inputs[| i].extra_data.bone_id != "";
if(layer_dragging == noone || layer_dragging == index) {
var _bx = _x + 24;
@ -378,7 +378,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
inputs[| index + 0] = nodeValue("Surface", self, JUNCTION_CONNECT.input, VALUE_TYPE.surface, 0);
inputs[| index + 0].surface_index = index;
inputs[| index + 0].hover_effect = 0;
inputs[| index + 0].extra_data[0] = "";
inputs[| index + 0].extra_data.bone_id = "";
inputs[| index + 1] = nodeValue("Transform", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, [ 0, 0, 0, 1, 1 ] )
.setDisplay(VALUE_DISPLAY.transform);
@ -501,7 +501,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
var _surf = current_data[surf_dragging];
var _tran = current_data[input_dragging];
var _bone = inputs[| surf_dragging].extra_data[0];
var _bone = inputs[| surf_dragging].extra_data.bone_id;
_bone = boneMap[? _bone];
if(drag_type == NODE_COMPOSE_DRAG.move) {
@ -566,7 +566,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
var _surf = array_safe_get(current_data, index);
if(!_surf || is_array(_surf)) continue;
var _bone = inputs[| index].extra_data[0];
var _bone = inputs[| index].extra_data.bone_id;
if(!ds_map_exists(boneMap, _bone)) {
//print($"Bone not found {_bone}");
continue;
@ -622,7 +622,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
var _surf = array_safe_get(current_data, index);
if(!_surf || is_array(_surf)) continue;
var _bone = inputs[| index].extra_data[0];
var _bone = inputs[| index].extra_data.bone_id;
if(!ds_map_exists(boneMap, _bone))
continue;
@ -773,7 +773,7 @@ function Node_Armature_Bind(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
var _s = use_data? _bind[i].surface.get() : _data[datInd];
if(!is_surface(_s)) continue;
var _b = use_data? _bind[i].bone : inputs[| datInd].extra_data[0];
var _b = use_data? _bind[i].bone : inputs[| datInd].extra_data.bone_id;
if(!ds_map_exists(boneMap, _b)) {
//print($"Bone not exist {_bone} from map {ds_map_size(boneMap)}")

View file

@ -37,7 +37,7 @@ function Node_Armature_Pose(_x, _y, _group = noone) : Node(_x, _y, _group) const
inputs[| index] = nodeValue(bone != noone? bone.name : "bone", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, [ 0, 0, 0, 1 ] )
.setDisplay(VALUE_DISPLAY.transform);
inputs[| index].extra_data[0] = bone != noone? bone.ID : noone;
inputs[| index].extra_data.bone_id = bone != noone? bone.ID : noone;
if(bone != noone)
boneMap[? bone.ID] = inputs[| index];
@ -317,7 +317,7 @@ function Node_Armature_Pose(_x, _y, _group = noone) : Node(_x, _y, _group) const
static doApplyDeserialize = function() {
for( var i = input_fix_len; i < ds_list_size(inputs); i += data_length ) {
var inp = inputs[| i];
var idx = array_safe_get(inp.extra_data, 0);
var idx = struct_try_get(inp.extra_data, bone_id);
boneMap[? idx] = inp;
}

View file

@ -209,7 +209,7 @@ function Node_Camera(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co
shader_set_surface("backg", temp_surface[!ppInd]); //prev surface
shader_set_surface("scene", _surface); //surface to draw
draw_sprite_ext(s_fx_pixel, 0, 0, 0, _surf_w, _surf_h, 0, c_white, 1);
draw_sprite_stretched(s_fx_pixel, 0, 0, 0, _surf_w, _surf_h);
surface_reset_target();
}

View file

@ -54,6 +54,17 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
preview_draw_surface = surface_create_empty(1, 1);
_preview_draw_surface = surface_create_empty(1, 1);
is_selecting = false;
is_selected = false;
is_select_drag = false;
selection_surface = surface_create_empty(1, 1);
selection_mask = surface_create_empty(1, 1);
selection_position = [ 0, 0 ];
selection_sx = 0;
selection_sy = 0;
selection_mx = 0;
selection_my = 0;
tool_channel_edit = new checkBoxGroup(THEME.tools_canvas_channel, function(ind, val) { tool_attribute.channel[ind] = val; });
tool_attribute.channel = [ true, true, true, true ];
tool_settings = [
@ -61,6 +72,7 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
];
tools = [
new NodeTool( "Selection", [ THEME.canvas_tools_selection_rectangle, THEME.canvas_tools_selection_circle ] ),
new NodeTool( "Pencil", THEME.canvas_tools_pencil ),
new NodeTool( "Eraser", THEME.canvas_tools_eraser ),
new NodeTool( "Rectangle", [ THEME.canvas_tools_rect, THEME.canvas_tools_rect_fill ]),
@ -74,7 +86,7 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
var _alp = inputs[| 11].getValue();
BLEND_ALPHA;
if(isUsingTool(1))
if(isUsingTool("Eraser"))
gpu_set_blendmode(bm_subtract);
draw_surface_ext_safe(drawing_surface, 0, 0, 1, 1, 0, c_white, _alp);
@ -395,12 +407,129 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
var _surf_w = surface_get_width(canvas_surface);
var _surf_h = surface_get_height(canvas_surface);
if(!isUsingTool("Selection") && is_surface(selection_surface)) {
var pos_x = selection_position[0];
var pos_y = selection_position[1];
surface_set_target(canvas_surface);
BLEND_ALPHA
draw_surface(selection_surface, pos_x, pos_y);
BLEND_NORMAL
surface_reset_target();
surface_store_buffer();
surface_free(selection_surface);
}
surface_set_target(canvas_surface);
draw_set_color(_col);
gpu_set_colorwriteenable(tool_attribute.channel[0], tool_attribute.channel[1], tool_attribute.channel[2], tool_attribute.channel[3]);
if(!isUsingTool("Selection"))
gpu_set_colorwriteenable(tool_attribute.channel[0], tool_attribute.channel[1], tool_attribute.channel[2], tool_attribute.channel[3]);
if(isUsingTool(0) || isUsingTool(1)) {
if(isUsingTool("Selection")) {
if(is_selected) {
if(!is_surface(selection_surface)) {
is_selected = false;
} else {
if(is_select_drag) {
var px = selection_sx + (mouse_cur_x - selection_mx);
var py = selection_sy + (mouse_cur_y - selection_my);
selection_position[0] = px;
selection_position[1] = py;
if(mouse_release(mb_left))
is_select_drag = false;
}
if(mouse_press(mb_left, active)) {
var pos_x = selection_position[0];
var pos_y = selection_position[1];
var sel_w = surface_get_width(selection_surface);
var sel_h = surface_get_height(selection_surface);
if(point_in_rectangle(mouse_cur_x, mouse_cur_y, pos_x, pos_y, pos_x + sel_w, pos_y + sel_h)) {
is_select_drag = true;
selection_sx = pos_x;
selection_sy = pos_y;
selection_mx = mouse_cur_x;
selection_my = mouse_cur_y;
} else {
is_selected = false;
surface_set_target(canvas_surface);
BLEND_ALPHA
draw_surface(selection_surface, pos_x, pos_y);
BLEND_NORMAL
surface_reset_target();
surface_store_buffer();
surface_free(selection_surface);
}
}
}
}
if(!is_selected) {
if(is_selecting) {
var sel_x0 = min(selection_sx, mouse_cur_x);
var sel_y0 = min(selection_sy, mouse_cur_y);
var sel_x1 = max(selection_sx, mouse_cur_x);
var sel_y1 = max(selection_sy, mouse_cur_y);
var sel_w = sel_x1 - sel_x0 + 1;
var sel_h = sel_y1 - sel_y0 + 1;
selection_mask = surface_verify(selection_mask, sel_w, sel_h);
surface_set_target(selection_mask);
DRAW_CLEAR
draw_set_color(c_white);
if(isUsingTool("Selection", 0))
draw_rectangle(0, 0, sel_w, sel_h, false);
else if(isUsingTool("Selection", 1))
draw_ellipse(0, 0, sel_w - 1, sel_h - 1, false);
surface_reset_target();
if(mouse_release(mb_left)) {
is_selecting = false;
if(sel_x0 != sel_x1 && sel_y0 != sel_y1) {
is_selected = true;
selection_surface = surface_create(sel_w, sel_h);
surface_set_target(selection_surface);
DRAW_CLEAR
draw_surface(canvas_surface, -sel_x0, -sel_y0);
BLEND_MULTIPLY
draw_surface(selection_mask, 0, 0);
BLEND_NORMAL
surface_reset_target();
surface_set_target(canvas_surface);
gpu_set_blendmode(bm_subtract);
draw_surface(selection_surface, sel_x0, sel_y0);
gpu_set_blendmode(bm_normal);
surface_reset_target();
surface_store_buffer();
selection_position = [ sel_x0, sel_y0 ];
}
}
} else {
if(mouse_press(mb_left, active)) {
is_selecting = true;
selection_sx = mouse_cur_x;
selection_sy = mouse_cur_y;
surface_free_safe(selection_mask);
}
}
}
} else if(isUsingTool("Pencil") || isUsingTool("Eraser")) {
if(key_mod_press(SHIFT) && key_mod_press(CTRL)) {
var aa = point_direction(mouse_pre_draw_x, mouse_pre_draw_y, mouse_cur_x, mouse_cur_y);
var dd = point_distance(mouse_pre_draw_x, mouse_pre_draw_y, mouse_cur_x, mouse_cur_y);
@ -456,7 +585,7 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
mouse_pre_x = mouse_cur_x;
mouse_pre_y = mouse_cur_y;
} else if(isUsingTool(2) || isUsingTool(3)) {
} else if(isUsingTool("Rectangle") || isUsingTool("Ellipse")) {
if(mouse_holding && key_mod_press(SHIFT)) {
var ww = mouse_cur_x - mouse_pre_x;
var hh = mouse_cur_y - mouse_pre_y;
@ -477,10 +606,10 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
drawing_surface = surface_verify(drawing_surface, _dim[0], _dim[1], attrDepth());
surface_set_shader(drawing_surface, noone);
if(isUsingTool(2))
draw_rect_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool(2, 1), _brush);
else if(isUsingTool(3))
draw_ellp_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool(3, 1), _brush);
if(isUsingTool("Rectangle"))
draw_rect_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool("Rectangle", 1), _brush);
else if(isUsingTool("Ellipse"))
draw_ellp_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool("Ellipse", 1), _brush);
surface_reset_shader();
if(mouse_release(mb_left)) {
@ -488,7 +617,7 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
mouse_holding = false;
}
}
} else if(isUsingTool(4) || (DRAGGING && DRAGGING.type == "Color")) {
} else if(isUsingTool("Fill") || (DRAGGING && DRAGGING.type == "Color")) {
if(point_in_rectangle(mouse_cur_x, mouse_cur_y, 0, 0, _surf_w - 1, _surf_h - 1)) {
var fill = DRAGGING? mouse_release(mb_left) : mouse_press(mb_left);
@ -532,36 +661,48 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
draw_surface_safe(drawing_surface, 0, 0);
draw_set_color(_col);
if(isUsingTool(0) || isUsingTool(1)) {
if(isUsingTool(1)) draw_set_color(c_white);
if(isUsingTool("Selection")) {
if(is_selected)
draw_surface(selection_surface, selection_position[0], selection_position[1]);
else if(is_selecting) {
var sel_x0 = min(selection_sx, mouse_cur_x);
var sel_y0 = min(selection_sy, mouse_cur_y);
draw_surface_safe(selection_mask, sel_x0, sel_y0);
}
} else if(isUsingTool("Pencil") || isUsingTool("Eraser")) {
if(isUsingTool("Eraser")) draw_set_color(c_white);
if(key_mod_press(SHIFT)) draw_line_size(mouse_pre_draw_x, mouse_pre_draw_y, mouse_cur_x, mouse_cur_y, _siz, _brush);
else draw_point_size(mouse_cur_x, mouse_cur_y, _siz, _brush);
} else if (mouse_holding) {
if(isUsingTool(2)) draw_rect_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool(2, 1), _brush);
else if(isUsingTool(3)) draw_ellp_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool(3, 1), _brush);
} else if(isUsingTool("Rectangle")) {
draw_rect_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool("Rectangle", 1), _brush);
} else if(isUsingTool("Ellipse")) {
draw_ellp_size(mouse_pre_x, mouse_pre_y, mouse_cur_x, mouse_cur_y, _siz, isUsingTool("Ellipse", 1), _brush);
}
surface_reset_shader();
surface_set_shader(prev_surface, noone,, BLEND.alpha);
draw_surface_safe(canvas_surface, 0, 0);
gpu_set_colorwriteenable(tool_attribute.channel[0], tool_attribute.channel[1], tool_attribute.channel[2], tool_attribute.channel[3]);
draw_surface_ext_safe(preview_draw_surface, 0, 0, 1, 1, 0, isUsingTool(1)? c_red : c_white, isUsingTool(1)? 0.2 : _alp);
gpu_set_colorwriteenable(true, true, true, true);
surface_reset_shader();
if(_bgr && is_surface(_bg))
draw_surface_ext(_bg, _x, _y, _s, _s, 0, c_white, _bga);
draw_surface_ext(prev_surface, _x, _y, _s, _s, 0, c_white, 1);
//if(isUsingTool(1)) {
// gpu_set_blendmode(bm_subtract);
// draw_surface_ext(preview_draw_surface, _x, _y, _s, _s, 0, c_white, 1);
// gpu_set_blendmode(bm_normal);
//}
if(!isNotUsingTool()) {
if(!isNotUsingTool()) {
if(isUsingTool("Selection")) {
if(is_selected) {
var pos_x = _x + selection_position[0] * _s;
var pos_y = _y + selection_position[1] * _s;
var sel_w = surface_get_width(selection_surface) * _s;
var sel_h = surface_get_height(selection_surface) * _s;
draw_set_color(c_white);
draw_rectangle_dashed(pos_x, pos_y, pos_x + sel_w, pos_y + sel_h, true, 4);
draw_surface_ext(selection_surface, pos_x, pos_y, _s, _s, 0, c_white, 1);
}
} else {
gpu_set_colorwriteenable(tool_attribute.channel[0], tool_attribute.channel[1], tool_attribute.channel[2], tool_attribute.channel[3]);
draw_surface_ext_safe(preview_draw_surface, _x, _y, _s, _s, 0, isUsingTool("Eraser")? c_red : c_white, isUsingTool("Eraser")? 0.2 : _alp);
gpu_set_colorwriteenable(true, true, true, true);
}
surface_set_target(_preview_draw_surface);
DRAW_CLEAR
draw_surface_ext(preview_draw_surface, _x, _y, _s, _s, 0, c_white, 1);
@ -572,8 +713,6 @@ function Node_Canvas(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
draw_surface_ext(_preview_draw_surface, 0, 0, 1, 1, 0, c_white, 1);
shader_reset();
}
surface_clear(prev_surface);
#endregion
var _x0 = _x;

View file

@ -447,6 +447,10 @@ function Node_Collection(_x, _y, _group = noone) : Node(_x, _y, _group) construc
instanceBase = noone;
}
static onDoubleClick = function(panel) {
panel.addContext(self);
}
static processSerialize = function(_map) {
_map[? "instance_base"] = instanceBase? instanceBase.node_id : noone;
}

View file

@ -1265,11 +1265,21 @@ function Node(_x, _y, _group = PANEL_GRAPH.getCurrentContext()) : __Node_Base(_x
static isUsingTool = function(index, subtool = noone) {
if(tools == -1)
return false;
if(PANEL_PREVIEW.tool_current != tools[index])
var _tool = PANEL_PREVIEW.tool_current;
if(_tool == noone)
return false;
if(is_real(index) && _tool != tools[index])
return false;
if(is_string(index) && _tool.getName(_tool.selecting) != index)
return false;
if(subtool == noone)
return true;
return tools[index].selecting == subtool;
return _tool.selecting == subtool;
}
static clone = function(target = PANEL_GRAPH.getCurrentContext()) {

View file

@ -106,6 +106,11 @@ function Node_Path(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
var ansize = ds_list_size(inputs) - input_fix_len;
var _edited = false;
var pos = outputs[| 0].getValue();
draw_set_color(COLORS._main_accent);
draw_circle(_x + pos[0] * _s, _y + pos[1] * _s, 4, false);
if(transform_type > 0) {
var _transform_minx = transform_minx;
var _transform_miny = transform_miny;

View file

@ -610,6 +610,10 @@ function NodeObject(_name, _spr, _node, _create, tags = []) constructor {
ds_list_add(node, "Debug");
addNodeObject(node, "Print", s_node_print, "Node_Print", [1, Node_Print], ["debug log"], "Display text to notification.").setVersion(1145);
var vct = ds_list_create();
addNodeCatagory("VCT", vct);
addNodeObject(vct, "Biterator", s_node_condition, "Node_Biterator", [1, Node_Biterator]);
var hid = ds_list_create();
addNodeCatagory("Hidden", hid, ["Hidden"]);
addNodeObject(hid, "Input", s_node_loop_input, "Node_Iterator_Each_Input", [1, Node_Iterator_Each_Input]);

View file

@ -88,11 +88,11 @@ function Node_Render_Sprite_Sheet(_x, _y, _group = noone) : Node(_x, _y, _group)
} else if(PROJECT.animator.rendering && PROJECT.animator.frame_progress && PROJECT.animator.current_frame == 0 && !refreshSurface) {
var skip = inputs[| 2].getValue();
if(is_array(inpt) && array_length(inpt) == 0) return;
var arr = is_array(inpt);
if(!arr)
inpt = [ inpt ];
var arr = is_array(inpt);
if(arr && array_length(inpt) == 0) return;
if(!arr) inpt = [ inpt ];
var _surf = [];
var amo = floor(PROJECT.animator.frames_total / skip);
var _st = clamp(rang[0], 0, amo);
var _ed = rang[1];
@ -195,7 +195,7 @@ function Node_Render_Sprite_Sheet(_x, _y, _group = noone) : Node(_x, _y, _group)
switch(pack) {
case SPRITE_STACK.horizontal :
var px = padd[2] + _frame * _w + max(0, _frame - 1) * spac;
var px = padd[2] + _frame * _w + max(0, _frame) * spac;
var _sx = px;
var _sy = py;
@ -209,7 +209,7 @@ function Node_Render_Sprite_Sheet(_x, _y, _group = noone) : Node(_x, _y, _group)
break;
case SPRITE_STACK.vertical :
var py = padd[1] + _frame * _h + max(0, _frame - 1) * spac;
var py = padd[1] + _frame * _h + max(0, _frame) * spac;
var _sx = px;
var _sy = py;
@ -227,8 +227,8 @@ function Node_Render_Sprite_Sheet(_x, _y, _group = noone) : Node(_x, _y, _group)
var _row = floor(_frame / col);
var _col = safe_mod(_frame, col);
px = padd[2] + _col * _w + max(0, _col - 1) * spac;
py = padd[1] + _row * _h + max(0, _row - 1) * spac;
px = padd[2] + _col * _w + max(0, _col) * spac;
py = padd[1] + _row * _h + max(0, _row) * spac;
_atl[i] = array_push_create(_atl[i], new spriteAtlasData(px, py, _w, _h, inpt[i], _frame));
draw_surface_safe(inpt[i], px, py);

View file

@ -127,7 +127,7 @@ function Node_Shape(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) con
var points = [];
var segCount = _path.getSegmentCount();
if(segCount > 1) {
if(segCount) {
var quality = 8;
var sample = quality * segCount;

View file

@ -7,6 +7,11 @@ function NodeTool(name, spr) constructor {
settings = [];
attribute = {};
static getName = function(index = 0) {
if(is_array(name)) return array_safe_get(name, index, "");
return name;
}
static addSetting = function(name, type, onEdit, keyAttr, val) {
var w;

View file

@ -402,7 +402,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
loop_range = -1;
unit = new nodeValueUnit(self);
extra_data = [];
extra_data = {};
dyna_depo = ds_list_create();
draw_line_shift_x = 0;
@ -601,9 +601,9 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
if(type == VALUE_TYPE.integer) editWidget.setSlideSpeed(1);
if(display_data != -1) editWidget.extras = display_data;
if(array_length(val) == 2)
extract_node = "Node_Vector2";
else if(array_length(val) == 3)
if(array_length(val) == 2) {
extract_node = [ "Node_Vector2", "Node_Path" ];
} else if(array_length(val) == 3)
extract_node = "Node_Vector3";
else if(array_length(val) == 4)
extract_node = "Node_Vector4";
@ -687,7 +687,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
for( var i = 0; i < array_length(animators); i++ )
animators[i].suffix = " " + array_safe_get(global.displaySuffix_Area, i, "");
extra_data[0] = AREA_MODE.area;
extra_data.area_type = AREA_MODE.area;
extract_node = "Node_Area";
break;
case VALUE_DISPLAY.padding :
@ -870,6 +870,9 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
}, display_data );
show_in_inspector = true;
break;
case VALUE_TYPE.pathnode :
extract_node = "Node_Path";
break;
}
setDropKey();
@ -959,7 +962,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
}
if(display_type == VALUE_DISPLAY.area) {
var dispType = array_safe_get(nodeFrom.extra_data, 0, AREA_MODE.area);
var dispType = struct_try_get(nodeFrom.extra_data, "area_type", AREA_MODE.area);
var surfGet = nodeFrom.display_data;
if(!applyUnit || surfGet == -1) return value;
@ -1341,7 +1344,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
if(_valueFrom == noone)
return removeFrom();
if(!isConnectable(_valueFrom, checkRecur, true))
if(!isConnectable(_valueFrom, checkRecur, false))
return false;
if(setFrom_condition != -1 && !setFrom_condition(_valueFrom))
@ -1578,18 +1581,20 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
return visible;
}
static extractNode = function() {
if(extract_node == "") return noone;
static extractNode = function(_type = extract_node) {
if(_type == "") return noone;
var ext = nodeBuild(extract_node, node.x, node.y);
var ext = nodeBuild(_type, node.x, node.y);
ext.x -= ext.w + 32;
setFrom(ext.outputs[| 0]);
for( var i = 0; i < ds_list_size(ext.outputs); i++ ) {
if(setFrom(ext.outputs[| i])) break;
}
var animFrom = animator.values;
var len = 2;
switch(extract_node) {
switch(_type) {
case "Node_Vector4": len++;
case "Node_Vector3": len++;
case "Node_Vector2":
@ -1612,6 +1617,8 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
}
}
break;
case "Node_Path":
break;
default:
var animTo = ext.inputs[| 0].animator;
var animLs = animTo.values;
@ -1667,6 +1674,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
if(connect_type == JUNCTION_CONNECT.output)
return _map;
_map.name = name;
_map.on_end = on_end;
_map.loop_range = loop_range;
_map.unit = unit.mode;
@ -1703,6 +1711,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
return;
//printIf(TESTING, " |- Applying deserialize to junction " + name + " of node " + node.name);
name = struct_try_get(_map, "name", name);
on_end = struct_try_get(_map, "on_end");
loop_range = struct_try_get(_map, "loop_range", -1);
unit.mode = struct_try_get(_map, "unit");
@ -1730,7 +1739,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
con_index = struct_try_get(_map, "from_index", -1);
}
if(struct_has(_map, "data"))
if(struct_has(_map, "data") && is_struct(_map.data))
extra_data = _map.data;
if(APPENDING) def_val = getValue(0);

View file

@ -0,0 +1,66 @@
function VCT(node) constructor {
self.node = node;
panel = PanelVCT;
vars = [];
static reset = function() {
for( var i = 0; i < array_length(vars); i++ )
vars[i].set(vars[i].def_val);
}
static createDialog = function() {
var pane = new panel(self);
dialogPanelCall(pane);
}
static process = function(params) {}
static serialize = function() {
var s = [];
for( var i = 0; i < array_length(vars); i++ )
s[i] = vars[i].get();
return s;
}
static deserialize = function(load_arr) {
var amo = min(array_length(load_arr), array_length(vars));
for( var i = 0; i < amo; i++ )
vars[i].set(load_arr[i]);
}
}
function PanelVCT(vct) : PanelContent() constructor {
self.vct = vct;
title = "VCT";
w = ui(480);
h = ui(320);
resizable = false;
function drawContent(panel) {}
}
function VCT_var(type, val) {
var v = new __VCT_var(type, val);
array_append(vars, v);
return v;
}
function __VCT_var(type, val) constructor {
self.type = type;
self.val = val;
def_val = val;
disp = VALUE_DISPLAY._default;
disp_data = 0;
static setDisplay = function(disp, disp_data = 0) {
self.disp = disp;
self.disp_data = disp_data;
return self;
}
static set = function(val) { if(val == undefined) return; self.val = val; }
static get = function() { return val; }
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "panel_VCT",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "VCT",
"path": "folders/VCT.yy",
},
}

View file

@ -0,0 +1,73 @@
function Panel_Console() : PanelContent() constructor {
title = "Console";
w = ui(640);
h = ui(320);
command = "";
history = [];
cmd_history = [];
cmd_index = 0;
keyboard_string = "";
static submit_command = function() {
if(command == "") return;
array_push(history, { txt: command, color: COLORS._main_text_sub });
array_push(cmd_history, command);
var cmd = string_splice(command, " ");
switch(cmd[0]) {
case "flag":
if(array_length(cmd) < 2) break;
var flg = array_safe_get(cmd, 1, "");
global.FLAG[$ flg] = !global.FLAG[$ flg];
array_push(history, { txt: $"Toggled debug flag: {flg} = {global.FLAG[$ flg]? "True" : "False"}", color: COLORS._main_value_positive });
break;
}
keyboard_string = "";
command = "";
}
function drawContent(panel) {
HOTKEY_BLOCK = true;
command = keyboard_string;
draw_clear_alpha(CDEF.main_dkblack, 1);
draw_set_color(c_black);
draw_set_alpha(0.75);
draw_rectangle(0, h - ui(28), w, h, false);
draw_set_alpha(1);
draw_set_text(f_code, fa_left, fa_bottom, COLORS._main_text);
draw_text(ui(8), h - ui(4), command);
draw_set_color(COLORS._main_text_sub);
draw_text(ui(8) + string_width(command), h - ui(4), "_");
var hy = h - ui(32);
for( var i = 0; i < array_length(history); i++ ) {
var his = history[array_length(history) - i - 1];
var txt = his.txt;
draw_set_color(his.color);
draw_text_ext(ui(8), hy, txt, -1, w - ui(16));
hy -= string_height_ext(txt, -1, w - ui(16));
if(hy <= 0) break;
}
if(keyboard_check_pressed(vk_enter))
submit_command();
if(keyboard_check_pressed(vk_up)) {
cmd_index = max(0, cmd_index - 1);
keyboard_string = array_safe_get(cmd_history, cmd_index, "");
command = keyboard_string;
} else if(keyboard_check_pressed(vk_anykey))
cmd_index = array_length(cmd_history);
}
}

View file

@ -830,6 +830,7 @@ function PanelContent() constructor {
context_str = "";
draggable = true;
expandable = true;
resizable = true;
panel = noone;
mx = 0;

View file

@ -428,10 +428,9 @@ function Panel_Graph(project = PROJECT) : PanelContent() constructor {
if(node_hovering != noone)
_HOVERING_ELEMENT = node_hovering;
if(node_hovering != noone && pFOCUS && struct_has(node_hovering, "nodes") && DOUBLE_CLICK) {
addContext(node_hovering);
if(node_hovering != noone && pFOCUS && struct_has(node_hovering, "onDoubleClick") && DOUBLE_CLICK) {
node_hovering.onDoubleClick(self);
DOUBLE_CLICK = false;
node_hovering = noone;
}
@ -1887,8 +1886,10 @@ function Panel_Graph(project = PROJECT) : PanelContent() constructor {
break;
}
if(!key_mod_press(SHIFT) && node && struct_has(DRAGGING, "from") && DRAGGING.from.value_from == noone)
DRAGGING.from.setFrom(node.outputs[| 0]);
if(!key_mod_press(SHIFT) && node && struct_has(DRAGGING, "from") && DRAGGING.from.value_from == noone) {
for( var i = 0; i < ds_list_size(node.outputs); i++ )
if(DRAGGING.from.setFrom(node.outputs[| i])) break;
}
}
static bringNodeToFront = function(node) {

View file

@ -540,9 +540,22 @@ function Panel_Inspector() : PanelContent() constructor {
);
if(jun.extract_node != "") {
array_insert(_menuItem, 2, menuItem(__txtx("panel_inspector_extract", "Extract..."), function() {
__dialog_junction.extractNode();
}));
if(is_array(jun.extract_node)) {
var ext = menuItem(__txtx("panel_inspector_extract_multiple", "Extract to..."), function(_dat) {
var arr = [];
for(var i = 0; i < array_length(__dialog_junction.extract_node); i++) {
var _rec = __dialog_junction.extract_node[i];
array_push(arr, menuItem(_rec, function(_dat) { __dialog_junction.extractNode(_dat.name); }));
}
return submenuCall(_dat, arr);
}).setIsShelf();
array_insert(_menuItem, 2, ext);
} else {
array_insert(_menuItem, 2, menuItem(__txtx("panel_inspector_extract_single", "Extract to node"), function() {
__dialog_junction.extractNode();
}));
}
}
var dia = menuCall("inspector_value_menu",,, _menuItem,, jun);

View file

@ -688,12 +688,12 @@ function Panel_Preview() : PanelContent() constructor {
_node.drawOverlay(overlayHover, cx, cy, canvas_s, _mx, _my, _snx, _sny, { w: w, h: h });
draw_sprite_stretched(THEME.tool_side, 1, 0, 0, tool_width, h);
var _tool = tool_hovering;
tool_hovering = noone;
if(_node.tools != -1) {
draw_sprite_stretched(THEME.tool_side, 1, 0, 0, tool_width, h);
var xx = ui(1) + tool_width / 2;
var yy = ui(34) + tool_size / 2;
var pd = 2;
@ -726,6 +726,7 @@ function Panel_Preview() : PanelContent() constructor {
var _sy1 = _syy + tool_size / 2;
if(point_in_rectangle(_mx, _my, _sx0, _sy0 + 1, _sx1, _sy1 - 1)) {
TOOLTIP = tool.getName(j);
draw_sprite_stretched(THEME.button_hide, 1, _sx0 + pd, _sy0 + pd, tool_size - pd * 2, tool_size - pd * 2);
if(mouse_press(mb_left, pFOCUS))
@ -740,14 +741,12 @@ function Panel_Preview() : PanelContent() constructor {
draw_sprite_colored(stool[j], 0, _sxx, _syy);
}
if(point_in_rectangle(_mx, _my, _x0, _y0 + 1, _x0 + s_ww, _y1 - 1)) {
if(point_in_rectangle(_mx, _my, _x0, _y0 + 1, _x0 + s_ww, _y1 - 1))
tool_hovering = tool;
TOOLTIP = tool.name;
}
} else {
if(tool_hovering == tool) {
draw_sprite_stretched(THEME.button_hide, 1, _x0 + pd, _y0 + pd, tool_size - pd * 2, tool_size - pd * 2);
TOOLTIP = tool.name;
TOOLTIP = tool.getName();
if(mouse_press(mb_left, pFOCUS))
tool.toggle();

View file

@ -86,7 +86,6 @@ function functionStringClean(fx) {
fx = string_replace_all(fx, ">=", "≥");
fx = string_replace_all(fx, "<=", "≤");
fx = string_replace_all(fx, "[", "@["); //add array accessor symbol arr[i] = arr@[i] = arr @ (i)
fx = string_trim(fx);
return fx;
@ -529,19 +528,19 @@ function functionStringClean(fx) {
//print($"Analyzing {ch}");
if(ds_map_exists(pres, ch)) { //symbol is operator
last_push = "op";
if(ds_stack_empty(op)) ds_stack_push(op, ch);
else {
var _top = ds_stack_top(op);
if(_top == "(" || ds_map_exists(global.FUNCTIONS, _top) || pres[? ch] > pres[? _top]) {
ds_stack_push(op, ch);
last_push = "op";
} else {
if(ch == "-" && ds_map_exists(pres, _ch)) ch = "∸"; //unary negative
while(pres[? ch] <= pres[? ds_stack_top(op)] && !ds_stack_empty(op))
ds_stack_push(vl, buildFuncTree(ds_stack_pop(op), vl));
ds_stack_push(op, ch);
last_push = "op";
}
}
@ -570,8 +569,12 @@ function functionStringClean(fx) {
last_push = "vl";
l++;
} else if (ch == "[") {
if(last_push == "vl") ds_stack_push(op, ch);
else ds_stack_push(op, [ "{", ds_stack_size(vl) ]);
if(last_push == "vl") {
ds_stack_push(op, "@");
ds_stack_push(op, ch);
} else
ds_stack_push(op, [ "{", ds_stack_size(vl) ]);
last_push = "op";
l++;
} else if (ch == "]") {
@ -582,12 +585,10 @@ function functionStringClean(fx) {
var arr = [];
while(ds_stack_size(vl) > _top[1])
array_insert(arr, 0, ds_stack_pop(vl));
ds_stack_pop(op);
ds_stack_push(vl, new __funcTree("【", arr));
break;
}
print($"Build tree {_top}");
ds_stack_push(vl, buildFuncTree(_top, vl));
}
@ -625,6 +626,7 @@ function functionStringClean(fx) {
last_push = "fn";
} else {
vsl = string_trim(vsl);
switch(vsl) {
case "e" : ds_stack_push(vl, 2.71828); break;
case "pi": ds_stack_push(vl, pi); break;

View file

@ -0,0 +1,38 @@
function vct_button(bx, by, sprs, ind = 0, icon = noone, icon_ind = 0, icon_drop = [-2, 0]) {
var hover = false;
var useIndex = !is_array(sprs);
var ss = useIndex? sprs : sprs[0];
var bw = sprite_get_width(ss);
var bh = sprite_get_height(ss);
var ox = sprite_get_xoffset(ss);
var oy = sprite_get_yoffset(ss);
var _x0 = bx - ox * 2;
var _y0 = by - oy * 2;
var _x1 = _x0 + bw * 2;
var _y1 = _y0 + bh * 2;
var res = false;
var pes = false;
if(pHOVER && point_in_rectangle(mx, my, _x0, _y0, _x1 - 1, _y1)) {
hover = true;
if(mouse_press(mb_left, pFOCUS))
res = true;
if(mouse_click(mb_left, pFOCUS)) {
pes = true;
if(useIndex) ind = 1;
else ss = sprs[1];
}
}
draw_sprite_ext(ss, ind, bx, by, 2, 2, 0, c_white, 1);
if(hover) draw_sprite_ext_add(ss, ind, bx, by, 2, 2, 0, c_white, 0.4);
if(icon) draw_sprite_ext(icon, icon_ind, (_x0 + _x1) / 2, (_y0 + _y1) / 2 + icon_drop[pes], 2, 2, 0, c_white, 1);
return res;
}

View file

@ -0,0 +1,11 @@
{
"resourceType": "GMScript",
"resourceVersion": "1.0",
"name": "vct_button",
"isCompatibility": false,
"isDnD": false,
"parent": {
"name": "widget",
"path": "folders/VCT/widget.yy",
},
}

View file

@ -8,6 +8,7 @@ uniform sampler2D backg;
uniform sampler2D scene;
uniform vec2 scnDimension;
uniform vec2 camDimension;
uniform vec2 position;
uniform float zoom;
uniform int sampleMode;
@ -71,7 +72,7 @@ vec4 bokeh(sampler2D tex, vec2 uv, float radius) { //ref. sh_blur_bokeh
void main() {
vec2 pos = position + (v_vTexcoord - vec2(.5)) * (camDimension / scnDimension) * zoom;
if(bg == 1) pos = position + v_vTexcoord - vec2(.5);
//if(bg == 1) pos = position + (v_vTexcoord - vec2(.5)) * (camDimension / scnDimension);
vec4 _col0 = sampleTexture( backg, v_vTexcoord );
vec4 _col1 = bokeh( scene, pos, bokehStrength );

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 366 B

View file

@ -0,0 +1,76 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_b_grey_long",
"bbox_bottom": 15,
"bbox_left": 0,
"bbox_right": 38,
"bbox_top": 0,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"f13864e1-1928-49f6-a688-6f6a2ed73fd1",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"4f09fb33-5ed5-4727-a022-5ab4d65356f2",},
],
"gridX": 0,
"gridY": 0,
"height": 16,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"358fd23a-a599-4055-beb8-fd2ef794b7da","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 6,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_b_grey_long",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 2.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"f13864e1-1928-49f6-a688-6f6a2ed73fd1","path":"sprites/s_biterator_b_grey_long/s_biterator_b_grey_long.yy",},},},"Disabled":false,"id":"47e9de64-ccdc-4d1f-827c-81e36a37e8e5","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"4f09fb33-5ed5-4727-a022-5ab4d65356f2","path":"sprites/s_biterator_b_grey_long/s_biterator_b_grey_long.yy",},},},"Disabled":false,"id":"198b563d-7b17-4cdd-adfc-bedc109e895e","IsCreationKey":false,"Key":1.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 0,
"yorigin": 16,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 39,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 352 B

View file

@ -0,0 +1,76 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_b_grey_short",
"bbox_bottom": 17,
"bbox_left": 0,
"bbox_right": 20,
"bbox_top": 0,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"59ba902e-cc8f-4cbc-b47d-e2dd1c10792e",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"9470e767-b59e-4abe-99bd-4a9bafa86307",},
],
"gridX": 0,
"gridY": 0,
"height": 18,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"f6befa36-8592-491e-8cc9-c4f7187be049","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 6,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_b_grey_short",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 2.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"59ba902e-cc8f-4cbc-b47d-e2dd1c10792e","path":"sprites/s_biterator_b_grey_short/s_biterator_b_grey_short.yy",},},},"Disabled":false,"id":"80947e51-ac2d-4e46-b01d-7c3566b87fb5","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"9470e767-b59e-4abe-99bd-4a9bafa86307","path":"sprites/s_biterator_b_grey_short/s_biterator_b_grey_short.yy",},},},"Disabled":false,"id":"c4ccfe25-7563-4fd4-aef2-34f9824ae638","IsCreationKey":false,"Key":1.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 0,
"yorigin": 18,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 21,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 310 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 B

View file

@ -0,0 +1,78 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_b_labels",
"bbox_bottom": 12,
"bbox_left": 5,
"bbox_right": 17,
"bbox_top": 0,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"8d959ee8-433e-4184-8264-98633ffac361",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"2e635ead-002d-4541-9a4b-bb7f5be498d1",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"3c33f700-463c-4692-bc33-da970ba4465b",},
],
"gridX": 0,
"gridY": 0,
"height": 13,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"ba40516b-b4a4-47d3-bdbb-1dfd78b37710","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 4,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_b_labels",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 3.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"8d959ee8-433e-4184-8264-98633ffac361","path":"sprites/s_biterator_b_labels/s_biterator_b_labels.yy",},},},"Disabled":false,"id":"b49b2b10-94f8-4c9b-9846-f7129a56ac84","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"2e635ead-002d-4541-9a4b-bb7f5be498d1","path":"sprites/s_biterator_b_labels/s_biterator_b_labels.yy",},},},"Disabled":false,"id":"3d68a9f3-9753-4501-a0d6-223076d3955a","IsCreationKey":false,"Key":1.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"3c33f700-463c-4692-bc33-da970ba4465b","path":"sprites/s_biterator_b_labels/s_biterator_b_labels.yy",},},},"Disabled":false,"id":"ff907a83-e360-4e0c-a8a2-b53ebf077e75","IsCreationKey":false,"Key":2.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 12,
"yorigin": 6,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 24,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 364 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 333 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 370 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 358 B

View file

@ -0,0 +1,82 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_b_shape_idle",
"bbox_bottom": 16,
"bbox_left": 0,
"bbox_right": 14,
"bbox_top": 0,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"308802a0-fa63-46ac-8fe2-05cf48998688",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"e023214a-f6ab-44dd-84b7-5dbc7eb96b38",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"b101e181-c231-46c2-abc4-1215e04f8df2",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"7e83d210-7ed4-48c0-b984-69c8f077df4d",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"41afcd9e-bcf0-4a94-a9ff-7f405c74461a",},
],
"gridX": 0,
"gridY": 0,
"height": 17,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"3b7a94ea-7973-46eb-bec9-848b4b2cdbac","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 0,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_b_shape_idle",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 5.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"308802a0-fa63-46ac-8fe2-05cf48998688","path":"sprites/s_biterator_b_shape_idle/s_biterator_b_shape_idle.yy",},},},"Disabled":false,"id":"14420cc2-dd84-4395-b530-720a8b224bfa","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"e023214a-f6ab-44dd-84b7-5dbc7eb96b38","path":"sprites/s_biterator_b_shape_idle/s_biterator_b_shape_idle.yy",},},},"Disabled":false,"id":"8fe2161f-3b32-4e1b-846f-3558b2c47f01","IsCreationKey":false,"Key":1.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"b101e181-c231-46c2-abc4-1215e04f8df2","path":"sprites/s_biterator_b_shape_idle/s_biterator_b_shape_idle.yy",},},},"Disabled":false,"id":"7ef20f0a-279e-409a-97eb-d3700d95b21e","IsCreationKey":false,"Key":2.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"7e83d210-7ed4-48c0-b984-69c8f077df4d","path":"sprites/s_biterator_b_shape_idle/s_biterator_b_shape_idle.yy",},},},"Disabled":false,"id":"d522dafc-46e1-4694-b04b-4cb9007716ff","IsCreationKey":false,"Key":3.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"41afcd9e-bcf0-4a94-a9ff-7f405c74461a","path":"sprites/s_biterator_b_shape_idle/s_biterator_b_shape_idle.yy",},},},"Disabled":false,"id":"e23f61d1-a816-431b-b1cb-c53101bdd496","IsCreationKey":false,"Key":4.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 0,
"yorigin": 0,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 15,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 362 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 354 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 355 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 369 B

View file

@ -0,0 +1,82 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_b_shape_press",
"bbox_bottom": 16,
"bbox_left": 0,
"bbox_right": 14,
"bbox_top": 2,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"9c1138a9-637c-4d03-b137-201ac0e6b552",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"c00399fd-1822-416b-a620-dac86b89dc71",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"e7ba4754-9a38-40ab-bb88-f1c11e616574",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"b68dc0b7-b538-4671-961c-44da806cde3c",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"7508d446-c0a7-4ff4-8112-b1a888cd80ce",},
],
"gridX": 0,
"gridY": 0,
"height": 17,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"f883e9ca-e7ae-4680-8e91-725f59a800d5","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 0,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_b_shape_press",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 5.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"9c1138a9-637c-4d03-b137-201ac0e6b552","path":"sprites/s_biterator_b_shape_press/s_biterator_b_shape_press.yy",},},},"Disabled":false,"id":"e27d3c3b-1e21-4e8f-a800-6d615278fe5f","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"c00399fd-1822-416b-a620-dac86b89dc71","path":"sprites/s_biterator_b_shape_press/s_biterator_b_shape_press.yy",},},},"Disabled":false,"id":"3d358247-013d-47f9-9218-923dd15900fb","IsCreationKey":false,"Key":1.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"e7ba4754-9a38-40ab-bb88-f1c11e616574","path":"sprites/s_biterator_b_shape_press/s_biterator_b_shape_press.yy",},},},"Disabled":false,"id":"fa55e642-fa80-41ec-b540-c4f4598a2c0e","IsCreationKey":false,"Key":2.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"b68dc0b7-b538-4671-961c-44da806cde3c","path":"sprites/s_biterator_b_shape_press/s_biterator_b_shape_press.yy",},},},"Disabled":false,"id":"fff55524-e8c9-4d69-9311-0c7f3e0fa53e","IsCreationKey":false,"Key":3.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"7508d446-c0a7-4ff4-8112-b1a888cd80ce","path":"sprites/s_biterator_b_shape_press/s_biterator_b_shape_press.yy",},},},"Disabled":false,"id":"5a54e846-95d1-420f-af61-a234a0fd1658","IsCreationKey":false,"Key":4.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 0,
"yorigin": 0,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 15,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -0,0 +1,74 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_bg",
"bbox_bottom": 230,
"bbox_left": 0,
"bbox_right": 303,
"bbox_top": 0,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"4c5a3eb3-368f-43a9-a612-f1604d7ac0e3",},
],
"gridX": 0,
"gridY": 0,
"height": 231,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"6db4533f-e75e-4b3d-b944-5b4b74fba8de","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 0,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_bg",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 1.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"4c5a3eb3-368f-43a9-a612-f1604d7ac0e3","path":"sprites/s_biterator_bg/s_biterator_bg.yy",},},},"Disabled":false,"id":"c1d620ec-8537-4f2d-8322-0db682984f91","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 0,
"yorigin": 0,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 304,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 666 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 658 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 666 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 658 B

View file

@ -0,0 +1,76 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_canvas",
"bbox_bottom": 85,
"bbox_left": 0,
"bbox_right": 84,
"bbox_top": 0,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"e194d487-e62a-43e9-95c1-b4b18a98ddd2",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"ac3d4f60-dff5-48d3-8da2-625364134947",},
],
"gridX": 0,
"gridY": 0,
"height": 86,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"9d316869-a6df-4984-b7a3-f444bea66b8b","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 0,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_canvas",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 2.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"e194d487-e62a-43e9-95c1-b4b18a98ddd2","path":"sprites/s_biterator_canvas/s_biterator_canvas.yy",},},},"Disabled":false,"id":"51591792-6487-485c-a58b-66ed3ca06792","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"ac3d4f60-dff5-48d3-8da2-625364134947","path":"sprites/s_biterator_canvas/s_biterator_canvas.yy",},},},"Disabled":false,"id":"78b2c47f-6126-47c9-b78b-e9364efd9579","IsCreationKey":false,"Key":1.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 0,
"yorigin": 0,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 85,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 333 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 306 B

View file

@ -0,0 +1,76 @@
{
"resourceType": "GMSprite",
"resourceVersion": "1.0",
"name": "s_biterator_dim_label",
"bbox_bottom": 6,
"bbox_left": 2,
"bbox_right": 9,
"bbox_top": 0,
"bboxMode": 0,
"collisionKind": 1,
"collisionTolerance": 0,
"DynamicTexturePage": false,
"edgeFiltering": false,
"For3D": false,
"frames": [
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"f527db25-bdb8-4b28-ba95-a6b2727fb787",},
{"resourceType":"GMSpriteFrame","resourceVersion":"1.1","name":"5f7e19b3-79f0-440b-8a4e-f38735b4c498",},
],
"gridX": 0,
"gridY": 0,
"height": 7,
"HTile": false,
"layers": [
{"resourceType":"GMImageLayer","resourceVersion":"1.0","name":"740e4cb7-21c2-4094-bc75-29ba27abf4ec","blendMode":0,"displayName":"default","isLocked":false,"opacity":100.0,"visible":true,},
],
"nineSlice": null,
"origin": 4,
"parent": {
"name": "biterator",
"path": "folders/VCT/biterator.yy",
},
"preMultiplyAlpha": false,
"sequence": {
"resourceType": "GMSequence",
"resourceVersion": "1.4",
"name": "s_biterator_dim_label",
"autoRecord": true,
"backdropHeight": 768,
"backdropImageOpacity": 0.5,
"backdropImagePath": "",
"backdropWidth": 1366,
"backdropXOffset": 0.0,
"backdropYOffset": 0.0,
"events": {"resourceType":"KeyframeStore<MessageEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"eventStubScript": null,
"eventToFunction": {},
"length": 2.0,
"lockOrigin": false,
"moments": {"resourceType":"KeyframeStore<MomentsEventKeyframe>","resourceVersion":"1.0","Keyframes":[],},
"playback": 1,
"playbackSpeed": 30.0,
"playbackSpeedType": 0,
"showBackdrop": true,
"showBackdropImage": false,
"timeUnits": 1,
"tracks": [
{"resourceType":"GMSpriteFramesTrack","resourceVersion":"1.0","name":"frames","builtinName":0,"events":[],"inheritsTrackColour":true,"interpolation":1,"isCreationTrack":false,"keyframes":{"resourceType":"KeyframeStore<SpriteFrameKeyframe>","resourceVersion":"1.0","Keyframes":[
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"f527db25-bdb8-4b28-ba95-a6b2727fb787","path":"sprites/s_biterator_dim_label/s_biterator_dim_label.yy",},},},"Disabled":false,"id":"e8cf99ae-1520-4cbf-9e94-0b764005f69b","IsCreationKey":false,"Key":0.0,"Length":1.0,"Stretch":false,},
{"resourceType":"Keyframe<SpriteFrameKeyframe>","resourceVersion":"1.0","Channels":{"0":{"resourceType":"SpriteFrameKeyframe","resourceVersion":"1.0","Id":{"name":"5f7e19b3-79f0-440b-8a4e-f38735b4c498","path":"sprites/s_biterator_dim_label/s_biterator_dim_label.yy",},},},"Disabled":false,"id":"0ffb09a3-6dea-487a-bc64-2b2a09fe8f8e","IsCreationKey":false,"Key":1.0,"Length":1.0,"Stretch":false,},
],},"modifiers":[],"spriteId":null,"trackColour":0,"tracks":[],"traits":0,},
],
"visibleRange": null,
"volume": 1.0,
"xorigin": 5,
"yorigin": 3,
},
"swatchColours": null,
"swfPrecision": 2.525,
"textureGroupId": {
"name": "Default",
"path": "texturegroups/Default",
},
"type": 0,
"VTile": false,
"width": 10,
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 437 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 448 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 449 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 451 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 446 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 455 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 464 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 448 B

Some files were not shown because too many files have changed in this diff Show more