This commit is contained in:
Tanasart 2024-08-20 15:15:53 +07:00
parent 2e685d9016
commit 782e6d8e1a
231 changed files with 92738 additions and 67561 deletions

File diff suppressed because one or more lines are too long

Binary file not shown.

Binary file not shown.

View file

@ -1,5 +1,4 @@
{ {
"safe_mode": "SAFE MODE",
"anim_length": "Animation length", "anim_length": "Animation length",
"anim_frame_rate": "Preview frame rate", "anim_frame_rate": "Preview frame rate",
@ -404,8 +403,6 @@
"pref_ui_font": "Overwrite UI font", "pref_ui_font": "Overwrite UI font",
"panel_menu_node_credit": "Node credit dialog", "panel_menu_node_credit": "Node credit dialog",
"panel_collection_update_thumbnail": "Update thumbnail",
"panel_collection_workshop_upload": "Upload to Steam Workshop",
"panel_graph_toggle_parameter" : "Toggle node parameters", "panel_graph_toggle_parameter" : "Toggle node parameters",
"panel_graph_group_require_shift" : "Hold Shift to enter group", "panel_graph_group_require_shift" : "Hold Shift to enter group",
"pref_add_node_remember" : "Remember add node position", "pref_add_node_remember" : "Remember add node position",
@ -425,7 +422,7 @@
"panel_driver" : "Driver...", "panel_driver" : "Driver...",
"panel_preview_lock_preview" : "Lock previewing node", "panel_preview_lock_preview" : "Lock previewing node",
// 1.19 // 1.16
"global_variables": "Global Variables", "global_variables": "Global Variables",
"panel_animation_keyframe_edit": "Edit Value...", "panel_animation_keyframe_edit": "Edit Value...",
"panel_graph_hide_disconnected": "Hide stray junctions", "panel_graph_hide_disconnected": "Hide stray junctions",

File diff suppressed because it is too large Load diff

View file

@ -356,7 +356,7 @@
"packing": "Packing", "packing": "Packing",
"resume" : "Resume", "resume" : "Resume",
// 1.19 // 1.16
"histogram" : "Histogram", "histogram" : "Histogram",
"background": "Background", "background": "Background",
"search": "Search", "search": "Search",
@ -372,5 +372,115 @@
"palettes_mixer": "Palettes Mixer", "palettes_mixer": "Palettes Mixer",
"release_note": "Release note", "release_note": "Release note",
//1.17.10
"3d_back_view" : "3D Back view",
"3d_bottom_view" : "3D Bottom view",
"3d_front_view" : "3D Front view",
"3d_left_view_" : "3D Left view ",
"3d_right_view_" : "3D Right view ",
"3d_sdf_view_settings" : "3D SDF View Settings",
"3d_snap_settings" : "3D Snap Settings",
"3d_top_view" : "3D Top view",
"3d_view_settings" : "3D View Settings",
"add_display" : "Add Display",
"addons_menu" : "Addons Menu",
"animate" : "Animate",
"append" : "Append",
"auto_align" : "Auto Align",
"blend_canvas" : "Blend Canvas",
"clear_all_notifications" : "Clear all notifications",
"clear_log_messages" : "Clear log messages",
"clear_warning_messages" : "Clear warning messages",
"close_all_files" : "Close all files",
"close_project" : "Close project",
"collapse_all_sections" : "Collapse All Sections",
"combine_axis" : "Combine Axis",
"command_palette" : "Command Palette",
"connection_settings" : "Connection Settings",
"console" : "Console",
"copy_color_hex" : "Copy Color Hex",
"copy_color" : "Copy Color",
"copy_current_frame" : "Copy Current Frame",
"copy_to_canvas" : "Copy to Canvas",
"copy_value" : "Copy Value",
"create_tunnel" : "Create Tunnel",
"delete_collection" : "Delete Collection",
"disable_expression" : "Disable Expression",
"dopesheet_collapse" : "Dopesheet Collapse",
"dopesheet_expand" : "Dopesheet Expand",
"driver" : "Driver",
"edit_keyframe_value" : "Edit Keyframe Value",
"edit_meta" : "Edit Meta",
"enter_group" : "Enter Group",
"expand_all_sections" : "Expand All Sections",
"export_.zip" : "Export .zip",
"export_all" : "Export all",
"export_as_image" : "Export As Image",
"export_hovering_node" : "Export Hovering Node",
"export_selected_node" : "Export Selected Node",
"extract_value" : "Extract Value",
"globalvar" : "Globalvar",
"grid_settings" : "Grid Settings",
"hide_disconnected" : "Hide Disconnected",
"import_.zip" : "Import .zip",
"lock_keyframe_y" : "Lock Keyframe Y",
"new_preview_window" : "New Preview Window",
"onion_skin_settings" : "Onion Skin Settings",
"open_at" : "Open at",
"open_autosave_folder" : "Open Autosave Folder",
"open_group_in_new_tab" : "Open Group In New Tab",
"open_log_file" : "Open log file",
"open_safe" : "Open Safe",
"paste_value" : "Paste Value",
"remove_group" : "Remove Group",
"rename_group" : "Rename Group",
"replace" : "Replace",
"reset_animation" : "Reset Animation",
"reset_range" : "Reset Range",
"reset_to_default" : "Reset To Default",
"save_all_current_frames" : "Save All Current Frames",
"save_at" : "Save at",
"save_to_focused_file" : "Save to focused file",
"scale_x1" : "Scale x1",
"scale_x2" : "Scale x2",
"scale_x4" : "Scale x4",
"scale_x8" : "Scale x8",
"scaler" : "Scaler",
"send_to_inspector" : "Send To Inspector",
"send_to_preview_window" : "Send To Preview Window",
"send_to_preview" : "Send To Preview",
"separate_axis" : "Separate Axis",
"set_range_end" : "Set Range End",
"set_range_start" : "Set Range Start",
"set_tile_both" : "Set Tile Both",
"set_tile_horizontal" : "Set Tile Horizontal",
"set_tile_off" : "Set Tile Off",
"set_tile_vertical" : "Set Tile Vertical",
"snap_nodes" : "Snap Nodes",
"stagger" : "Stagger",
"tiling_settings" : "Tiling Settings",
"toggle_avoid_label" : "Toggle Avoid Label",
"toggle_bypass" : "Toggle Bypass",
"toggle_compute" : "Toggle Compute",
"toggle_control" : "Toggle Control",
"toggle_dimension" : "Toggle Dimension",
"toggle_grid_snap" : "Toggle Grid Snap",
"toggle_lock" : "Toggle Lock",
"toggle_minimap" : "Toggle Minimap",
"toggle_onion_skin_view" : "Toggle Onion Skin view",
"toggle_onion_skin" : "Toggle Onion Skin",
"toggle_pixel_grid" : "Toggle Pixel Grid",
"toggle_reset_view" : "Toggle Reset View",
"toggle_show_info" : "Toggle Show Info",
"toggle_show_origin" : "Toggle Show Origin",
"toggle_snap_to_grid" : "Toggle Snap to Grid",
"toggle_split_view" : "Toggle Split View",
"toggle_tile" : "Toggle Tile",
"update_steam" : "Update Steam",
"update_thumbnail" : "Update Thumbnail",
"upload_to_steam" : "Upload To Steam",
"use_expression" : "Use Expression",
"view_settings" : "View Settings",
"" : "" "" : ""
} }

View file

@ -1,5 +1,4 @@
{ {
"safe_mode": "SAFE MODE",
"anim_length": "Animation length", "anim_length": "Animation length",
"anim_frame_rate": "Preview frame rate", "anim_frame_rate": "Preview frame rate",
@ -323,17 +322,114 @@
"workspace_replace_current": "Replace with current", "workspace_replace_current": "Replace with current",
"preview_3d_settings": "3D Preview Settings", "close_all_projects": "Close all projects",
"graph_view_settings": "View Settings", "close_current_file": "Close current file",
"graph_visibility_preview_scale": "Preview Scale",
"graph_visibility_avoid_label": "Avoid Label",
"graph_grid_settings": "Grid Settings",
"project.graphGrid.color": "Grid color",
"project.graphGrid.opacity": "Grid opacity",
"graph_connection_settings": "Connection Settings", "graph_connection_settings": "Connection Settings",
"graph_export_nodes": "Nodes",
"graph_grid_settings": "Grid Settings",
"graph_view_settings": "View Settings",
"graph_visibility_avoid_label": "Avoid Label",
"graph_visibility_preview_scale": "Preview Scale",
"onion_skin_frame_step": "Frame step",
"onion_skin_post_color": "Post Color",
"onion_skin_pre_color": "Pre Color",
"onion_skin_top": "Draw on top",
"panel_animation_lock_y": "Lock/Unlock Y easing",
"panel_debug_overlay": "Debug overlay",
"panel_inspector_axis_separate": "Separate axis",
"panel_inspector_extract_multiple": "Extract to...",
"panel_inspector_extract_single": "Extract to node",
"panel_inspector_pop_text": "Pop up Editor",
"panel_menu_export_render_all": "Render disabled node when export",
"panel_menu_steam_workshop": "Steam Workshop",
"panel_menu_tester": "Tester",
"pref_connection_highlight_fade": "Fade connection", "pref_connection_highlight_fade": "Fade connection",
"pref_connection_highlight": "Highlight connection", "pref_connection_highlight": "Highlight connection",
"pref_connection_quality": "Render quality", "pref_connection_quality": "Render quality",
"preview_3d_settings": "3D Preview Settings",
"preview_grid_settings": "Grid Settings",
"preview_onion_skin_settings": "Onion skin Settings",
"project_graphGrid_color": "Grid color",
"project_graphGrid_opacity": "Grid opacity",
"project_modified": "Project modified",
"project_settings": "Project Settings",
"save_project_'{1}'_before_exit?": "Save project '{1}' before exit?",
"widget_control_point_move": "Move",
"widget_control_point_wind": "Wind",
"widget_range_constant": "Constant",
"widget_range_random": "Random Range",
"widget_rotator_random_double_range": "Double Range",
"widget_rotator_random_double_span": "Double Span",
"widget_rotator_random_range": "Range",
"widget_rotator_random_span": "Span",
"pref_clear_temp": "Clear temp file on close.",
"pref_connection_type": "Connection type",
"pref_use_alt": "Use ALT for",
"meta_old_version": "Created on an older version",
"open_in_safe_mode": "Open in safe mode",
"group_properties": "Group Properties",
"panel_inspector_axis_combine": "Combine axis",
"panel_inspector_disable_expression": "Disable expression",
"new_folder": "New folder",
"panel_graph_enter_group_new_tab": "Open group in new tab",
"set_as_group_tool": "Set as group tool",
"panel_graph_align_nodes": "Align nodes",
"panel_graph_copy_prop": "Copy all properties",
"panel_graph_paste_prop": "Paste all properties",
"node_color": "Node Color",
"connection_color": "Connection Color",
"pref_pages_interface": "Interface",
"pref_directory_temp": "Temp path (restart required)",
"pref_inspector_focus_on_double_click": "Focus on double click",
"notification": "Notification",
"pref_pan_key": "Panning key",
"reload_theme": "Reload theme",
"reset_layout": "Reset layout",
"close_current_project": "Close current project",
"panel_menu_connect_patreon": "Connect to Patreon",
"pref_directory_ImageMagick": "ImageMagick path*",
"pref_directory_webp": "Webp path*",
"pref_directory_gifski": "Gifski path*",
"pref_directory_FFmpeg": "FFmpeg path*",
"pref_supporter_icon": "Show supporter icon",
"pref_graph_group_in_tab": "Open group in new tab",
"pref_widget_autocomplete_delay": "Code Autocomplete delay",
"panel_collection_workshop_update": "Update Steam Workshop content",
"meta_new_version": "Created on a newer version",
"pref_ui_font": "Overwrite UI font",
"panel_menu_node_credit": "Node credit dialog",
"panel_graph_toggle_parameter" : "Toggle node parameters",
"panel_graph_group_require_shift" : "Hold Shift to enter group",
"pref_add_node_remember" : "Remember add node position",
"pref_preview_show_real_fps" : "Show real fps",
"pref_widget_textbox_shake" : "Textbox shake",
"pref_widget_textbox_particles" : "Textbox particles",
"panel_menu_test_error" : "Display Error",
"pref_node_param_show" : "Show paramater on new node",
"panel_menu_test_warning" : "Display Warning",
"pref_node_param_width" : "Default param width",
"panel_menu_test_gen_theme" : "Generate theme object",
"collapse_toggle" : "Collapse Toggle",
"panel_animation_name_only" : "Node name",
"toggle_nodes" : "Toggle nodes",
"panel_animation_name_type" : "Node type",
"toggle_parameters" : "Toggle parameters",
"panel_driver" : "Driver...",
"panel_preview_lock_preview" : "Lock previewing node",
// 1.16
"global_variables": "Global Variables",
"panel_animation_keyframe_edit": "Edit Value...",
"panel_graph_hide_disconnected": "Hide stray junctions",
"panel_graph_tunnel": "Create tunnels",
"art_by_kenney": "Art by Kenney",
"panel_menu_reset_layout": "Reset layout",
"panel_graph_toggle_minimap": "Toggle minimap",
"" : "" "" : ""
} }

File diff suppressed because it is too large Load diff

View file

@ -190,23 +190,297 @@
"zoom_to_fit": "Zoom to fit", "zoom_to_fit": "Zoom to fit",
"zoom": "Zoom", "zoom": "Zoom",
"onion_skin": "Onion skin",
"default_surface": "Default Surface",
"palette": "Palette",
"misc": "Misc",
"action": "Action", "action": "Action",
"custom": "Custom",
"light": "Light",
"legacy": "Legacy",
"region": "Region",
"armature": "Armature", "armature": "Armature",
"surface": "Surface",
"buffer": "Buffer", "buffer": "Buffer",
"shader": "Shader", "curve": "Curve",
"system": "System", "custom": "Custom",
"linked": "Linked", "default_surface": "Default Surface",
"euler": "Euler",
"format_": "Format ",
"independent": "Independent", "independent": "Independent",
"legacy": "Legacy",
"light": "Light",
"linked": "Linked",
"misc.": "Misc.",
"misc": "Misc",
"number": "Number",
"onion_skin": "Onion skin",
"opacity": "Opacity",
"output": "Output", "output": "Output",
"palette": "Palette",
"path": "Path",
"quaternion": "Quaternion",
"radius": "radius",
"region": "Region",
"render": "Render",
"save_all": "Save all",
"scale": "Scale",
"settings": "Settings",
"shader": "Shader",
"shape": "Shape", "shape": "Shape",
"render": "Render" "surface": "Surface",
"system": "System",
"text": "Text",
"3d_camera": "3D Camera",
"add_bones": "Add bones",
"add_node": "Add node",
"add_number": "Add number",
"add_vector2": "Add vector2",
"add_vector3": "Add vector3",
"add_vector4": "Add vector4",
"adjust_control_point": "Adjust control point",
"anchor_add_/_remove": "Anchor add / remove",
"anchor_remove": "Anchor remove",
"array": "Array",
"assetbox": "Assetbox",
"bg": "Bg",
"blend": "Blend",
"canvas_blend": "Canvas blend",
"canvas": "Canvas",
"circle_path": "Circle path",
"close_file": "Close file",
"collection": "Collection",
"color_picker": "Color picker",
"comb": "Comb",
"copy_property": "Copy property",
"delete_(break)": "Delete (break)",
"delete_(merge)": "Delete (merge)",
"delete_keys": "Delete keys",
"detach_bones": "Detach bones",
"dialog": "Dialog",
"draw_path": "Draw path",
"edit_control_point": "Edit control point",
"ellipse": "Ellipse",
"eraser": "Eraser",
"fill": "Fill",
"first_frame": "First frame",
"focus_content": "Focus content",
"full_panel": "Full panel",
"grab": "Grab",
"ik": "IK",
"import_image_array": "Import image array",
"import_image": "Import image",
"last_frame": "Last frame",
"main": "Main",
"mesh_edit": "Mesh edit",
"mesh_warp": "Mesh Warp",
"move_target": "Move Target",
"new_file": "New file",
"next_frame": "Next frame",
"open_notification": "Open notification",
"pan": "Pan",
"panel": "Panel",
"paste_property": "Paste property",
"path_anchor": "Path Anchor",
"pencil": "Pencil",
"pin_mesh": "Pin mesh",
"play/pause": "Play/Pause",
"preview_focusing_node": "Preview focusing node",
"preview_window": "Preview window",
"previous_frame": "Previous frame",
"push": "Push",
"rectangle_path": "Rectangle path",
"rectangle": "Rectangle",
"remove_bones": "Remove bones",
"render_all": "Render all",
"resume/pause": "Resume/Pause",
"rigid_object": "Rigid Object",
"rotate": "Rotate",
"rotation": "Rotation",
"save_all_current_frame": "Save all current frame",
"save_current_frame": "Save current frame",
"scrollbar": "Scrollbar",
"select_all": "Select all",
"selection": "Selection",
"shorten": "Shorten",
"strand_create": "Strand Create",
"stretch": "Stretch",
"surfaces": "Surfaces",
"toggle_animation": "Toggle animation",
"toggle_grid": "Toggle grid",
"toggle_preview": "Toggle preview",
"toggle_render": "Toggle render",
"transform_node": "Transform node",
"widget": "Widget",
"workshop": "Workshop",
"rename": "Rename",
"inputs": "Inputs",
"save/load": "Save/Load",
"crash": "Crash",
"splash": "Splash",
"quality": "Quality",
"display": "Display",
"data": "Data",
"layers": "Layers",
"brush": "Brush",
"sprite": "Sprite",
"spawn": "Spawn",
"movement": "Movement",
"physics": "Physics",
"ground": "Ground",
"wiggles": "Wiggles",
"sdf": "SDF",
"level": "Level",
"channel": "Channel",
"solid": "Solid",
"noise": "Noise",
"pattern": "Pattern",
"related": "Related",
"uncategorized": "uncategorized",
"libraries": "Libraries",
"extra": "Extra",
"modify": "Modify",
"points": "Points",
"text_area": "Text Area",
"safe_mode": "SAFE MODE",
"read_only": "READ ONLY",
"untitled": "Untitled",
"supporter": "Supporter",
"supporter_exclusive": "Supporter exclusive",
"external": "External",
"mk_effects": "MK Effects",
"flip_fluid": "FLIP Fluid",
"projects": "Projects",
"project": "Project",
"portable_project_(.zip)": "Portable project (.zip)",
"brightness": "Brightness",
"alpha": "Alpha",
"material": "Material",
"packing": "Packing",
"resume" : "Resume",
// 1.16
"histogram" : "Histogram",
"background": "Background",
"search": "Search",
"welcome_files": "Welcome Files",
"palette_mixer": "Palette Mixer",
"file_explorer": "File Explorer",
"show_avatar" : "Show Avatar",
"open_in_explorer" : "Open in explorer",
"downloads": "Downloads",
"label": "Label",
"list": "List",
"view_mode": "View mode",
"palettes_mixer": "Palettes Mixer",
"release_note": "Release note",
//1.17.10
"3d_back_view" : "3D Back view",
"3d_bottom_view" : "3D Bottom view",
"3d_front_view" : "3D Front view",
"3d_left_view_" : "3D Left view ",
"3d_right_view_" : "3D Right view ",
"3d_sdf_view_settings" : "3D SDF View Settings",
"3d_snap_settings" : "3D Snap Settings",
"3d_top_view" : "3D Top view",
"3d_view_settings" : "3D View Settings",
"add_display" : "Add Display",
"addons_menu" : "Addons Menu",
"animate" : "Animate",
"append" : "Append",
"auto_align" : "Auto Align",
"blend_canvas" : "Blend Canvas",
"clear_all_notifications" : "Clear all notifications",
"clear_log_messages" : "Clear log messages",
"clear_warning_messages" : "Clear warning messages",
"close_all_files" : "Close all files",
"close_project" : "Close project",
"collapse_all_sections" : "Collapse All Sections",
"combine_axis" : "Combine Axis",
"command_palette" : "Command Palette",
"connection_settings" : "Connection Settings",
"console" : "Console",
"copy_color_hex" : "Copy Color Hex",
"copy_color" : "Copy Color",
"copy_current_frame" : "Copy Current Frame",
"copy_to_canvas" : "Copy to Canvas",
"copy_value" : "Copy Value",
"create_tunnel" : "Create Tunnel",
"delete_collection" : "Delete Collection",
"disable_expression" : "Disable Expression",
"dopesheet_collapse" : "Dopesheet Collapse",
"dopesheet_expand" : "Dopesheet Expand",
"driver" : "Driver",
"edit_keyframe_value" : "Edit Keyframe Value",
"edit_meta" : "Edit Meta",
"enter_group" : "Enter Group",
"expand_all_sections" : "Expand All Sections",
"export_.zip" : "Export .zip",
"export_all" : "Export all",
"export_as_image" : "Export As Image",
"export_hovering_node" : "Export Hovering Node",
"export_selected_node" : "Export Selected Node",
"extract_value" : "Extract Value",
"globalvar" : "Globalvar",
"grid_settings" : "Grid Settings",
"hide_disconnected" : "Hide Disconnected",
"import_.zip" : "Import .zip",
"lock_keyframe_y" : "Lock Keyframe Y",
"new_preview_window" : "New Preview Window",
"onion_skin_settings" : "Onion Skin Settings",
"open_at" : "Open at",
"open_autosave_folder" : "Open Autosave Folder",
"open_group_in_new_tab" : "Open Group In New Tab",
"open_log_file" : "Open log file",
"open_safe" : "Open Safe",
"paste_value" : "Paste Value",
"remove_group" : "Remove Group",
"rename_group" : "Rename Group",
"replace" : "Replace",
"reset_animation" : "Reset Animation",
"reset_range" : "Reset Range",
"reset_to_default" : "Reset To Default",
"save_all_current_frames" : "Save All Current Frames",
"save_at" : "Save at",
"save_to_focused_file" : "Save to focused file",
"scale_x1" : "Scale x1",
"scale_x2" : "Scale x2",
"scale_x4" : "Scale x4",
"scale_x8" : "Scale x8",
"scaler" : "Scaler",
"send_to_inspector" : "Send To Inspector",
"send_to_preview_window" : "Send To Preview Window",
"send_to_preview" : "Send To Preview",
"separate_axis" : "Separate Axis",
"set_range_end" : "Set Range End",
"set_range_start" : "Set Range Start",
"set_tile_both" : "Set Tile Both",
"set_tile_horizontal" : "Set Tile Horizontal",
"set_tile_off" : "Set Tile Off",
"set_tile_vertical" : "Set Tile Vertical",
"snap_nodes" : "Snap Nodes",
"stagger" : "Stagger",
"tiling_settings" : "Tiling Settings",
"toggle_avoid_label" : "Toggle Avoid Label",
"toggle_bypass" : "Toggle Bypass",
"toggle_compute" : "Toggle Compute",
"toggle_control" : "Toggle Control",
"toggle_dimension" : "Toggle Dimension",
"toggle_grid_snap" : "Toggle Grid Snap",
"toggle_lock" : "Toggle Lock",
"toggle_minimap" : "Toggle Minimap",
"toggle_onion_skin_view" : "Toggle Onion Skin view",
"toggle_onion_skin" : "Toggle Onion Skin",
"toggle_pixel_grid" : "Toggle Pixel Grid",
"toggle_reset_view" : "Toggle Reset View",
"toggle_show_info" : "Toggle Show Info",
"toggle_show_origin" : "Toggle Show Origin",
"toggle_snap_to_grid" : "Toggle Snap to Grid",
"toggle_split_view" : "Toggle Split View",
"toggle_tile" : "Toggle Tile",
"update_steam" : "Update Steam",
"update_thumbnail" : "Update Thumbnail",
"upload_to_steam" : "Upload To Steam",
"use_expression" : "Use Expression",
"view_settings" : "View Settings",
"" : ""
} }

Binary file not shown.

View file

@ -1,5 +1,4 @@
{ {
"safe_mode": "SAFE MODE",
"anim_length": "Animation length", "anim_length": "Animation length",
"anim_frame_rate": "Preview frame rate", "anim_frame_rate": "Preview frame rate",
@ -404,8 +403,6 @@
"pref_ui_font": "Overwrite UI font", "pref_ui_font": "Overwrite UI font",
"panel_menu_node_credit": "Node credit dialog", "panel_menu_node_credit": "Node credit dialog",
"panel_collection_update_thumbnail": "Update thumbnail",
"panel_collection_workshop_upload": "Upload to Steam Workshop",
"panel_graph_toggle_parameter" : "Toggle node parameters", "panel_graph_toggle_parameter" : "Toggle node parameters",
"panel_graph_group_require_shift" : "Hold Shift to enter group", "panel_graph_group_require_shift" : "Hold Shift to enter group",
"pref_add_node_remember" : "Remember add node position", "pref_add_node_remember" : "Remember add node position",
@ -425,7 +422,7 @@
"panel_driver" : "Driver...", "panel_driver" : "Driver...",
"panel_preview_lock_preview" : "Lock previewing node", "panel_preview_lock_preview" : "Lock previewing node",
// 1.19 // 1.16
"global_variables": "Global Variables", "global_variables": "Global Variables",
"panel_animation_keyframe_edit": "Edit Value...", "panel_animation_keyframe_edit": "Edit Value...",
"panel_graph_hide_disconnected": "Hide stray junctions", "panel_graph_hide_disconnected": "Hide stray junctions",

File diff suppressed because it is too large Load diff

View file

@ -356,7 +356,7 @@
"packing": "Packing", "packing": "Packing",
"resume" : "Resume", "resume" : "Resume",
// 1.19 // 1.16
"histogram" : "Histogram", "histogram" : "Histogram",
"background": "Background", "background": "Background",
"search": "Search", "search": "Search",
@ -372,5 +372,115 @@
"palettes_mixer": "Palettes Mixer", "palettes_mixer": "Palettes Mixer",
"release_note": "Release note", "release_note": "Release note",
//1.17.10
"3d_back_view" : "3D Back view",
"3d_bottom_view" : "3D Bottom view",
"3d_front_view" : "3D Front view",
"3d_left_view_" : "3D Left view ",
"3d_right_view_" : "3D Right view ",
"3d_sdf_view_settings" : "3D SDF View Settings",
"3d_snap_settings" : "3D Snap Settings",
"3d_top_view" : "3D Top view",
"3d_view_settings" : "3D View Settings",
"add_display" : "Add Display",
"addons_menu" : "Addons Menu",
"animate" : "Animate",
"append" : "Append",
"auto_align" : "Auto Align",
"blend_canvas" : "Blend Canvas",
"clear_all_notifications" : "Clear all notifications",
"clear_log_messages" : "Clear log messages",
"clear_warning_messages" : "Clear warning messages",
"close_all_files" : "Close all files",
"close_project" : "Close project",
"collapse_all_sections" : "Collapse All Sections",
"combine_axis" : "Combine Axis",
"command_palette" : "Command Palette",
"connection_settings" : "Connection Settings",
"console" : "Console",
"copy_color_hex" : "Copy Color Hex",
"copy_color" : "Copy Color",
"copy_current_frame" : "Copy Current Frame",
"copy_to_canvas" : "Copy to Canvas",
"copy_value" : "Copy Value",
"create_tunnel" : "Create Tunnel",
"delete_collection" : "Delete Collection",
"disable_expression" : "Disable Expression",
"dopesheet_collapse" : "Dopesheet Collapse",
"dopesheet_expand" : "Dopesheet Expand",
"driver" : "Driver",
"edit_keyframe_value" : "Edit Keyframe Value",
"edit_meta" : "Edit Meta",
"enter_group" : "Enter Group",
"expand_all_sections" : "Expand All Sections",
"export_.zip" : "Export .zip",
"export_all" : "Export all",
"export_as_image" : "Export As Image",
"export_hovering_node" : "Export Hovering Node",
"export_selected_node" : "Export Selected Node",
"extract_value" : "Extract Value",
"globalvar" : "Globalvar",
"grid_settings" : "Grid Settings",
"hide_disconnected" : "Hide Disconnected",
"import_.zip" : "Import .zip",
"lock_keyframe_y" : "Lock Keyframe Y",
"new_preview_window" : "New Preview Window",
"onion_skin_settings" : "Onion Skin Settings",
"open_at" : "Open at",
"open_autosave_folder" : "Open Autosave Folder",
"open_group_in_new_tab" : "Open Group In New Tab",
"open_log_file" : "Open log file",
"open_safe" : "Open Safe",
"paste_value" : "Paste Value",
"remove_group" : "Remove Group",
"rename_group" : "Rename Group",
"replace" : "Replace",
"reset_animation" : "Reset Animation",
"reset_range" : "Reset Range",
"reset_to_default" : "Reset To Default",
"save_all_current_frames" : "Save All Current Frames",
"save_at" : "Save at",
"save_to_focused_file" : "Save to focused file",
"scale_x1" : "Scale x1",
"scale_x2" : "Scale x2",
"scale_x4" : "Scale x4",
"scale_x8" : "Scale x8",
"scaler" : "Scaler",
"send_to_inspector" : "Send To Inspector",
"send_to_preview_window" : "Send To Preview Window",
"send_to_preview" : "Send To Preview",
"separate_axis" : "Separate Axis",
"set_range_end" : "Set Range End",
"set_range_start" : "Set Range Start",
"set_tile_both" : "Set Tile Both",
"set_tile_horizontal" : "Set Tile Horizontal",
"set_tile_off" : "Set Tile Off",
"set_tile_vertical" : "Set Tile Vertical",
"snap_nodes" : "Snap Nodes",
"stagger" : "Stagger",
"tiling_settings" : "Tiling Settings",
"toggle_avoid_label" : "Toggle Avoid Label",
"toggle_bypass" : "Toggle Bypass",
"toggle_compute" : "Toggle Compute",
"toggle_control" : "Toggle Control",
"toggle_dimension" : "Toggle Dimension",
"toggle_grid_snap" : "Toggle Grid Snap",
"toggle_lock" : "Toggle Lock",
"toggle_minimap" : "Toggle Minimap",
"toggle_onion_skin_view" : "Toggle Onion Skin view",
"toggle_onion_skin" : "Toggle Onion Skin",
"toggle_pixel_grid" : "Toggle Pixel Grid",
"toggle_reset_view" : "Toggle Reset View",
"toggle_show_info" : "Toggle Show Info",
"toggle_show_origin" : "Toggle Show Origin",
"toggle_snap_to_grid" : "Toggle Snap to Grid",
"toggle_split_view" : "Toggle Split View",
"toggle_tile" : "Toggle Tile",
"update_steam" : "Update Steam",
"update_thumbnail" : "Update Thumbnail",
"upload_to_steam" : "Upload To Steam",
"use_expression" : "Use Expression",
"view_settings" : "View Settings",
"" : "" "" : ""
} }

View file

@ -1,5 +1,4 @@
{ {
"safe_mode": "SAFE MODE",
"anim_length": "Animation length", "anim_length": "Animation length",
"anim_frame_rate": "Preview frame rate", "anim_frame_rate": "Preview frame rate",
@ -323,17 +322,114 @@
"workspace_replace_current": "Replace with current", "workspace_replace_current": "Replace with current",
"preview_3d_settings": "3D Preview Settings", "close_all_projects": "Close all projects",
"graph_view_settings": "View Settings", "close_current_file": "Close current file",
"graph_visibility_preview_scale": "Preview Scale",
"graph_visibility_avoid_label": "Avoid Label",
"graph_grid_settings": "Grid Settings",
"project.graphGrid.color": "Grid color",
"project.graphGrid.opacity": "Grid opacity",
"graph_connection_settings": "Connection Settings", "graph_connection_settings": "Connection Settings",
"graph_export_nodes": "Nodes",
"graph_grid_settings": "Grid Settings",
"graph_view_settings": "View Settings",
"graph_visibility_avoid_label": "Avoid Label",
"graph_visibility_preview_scale": "Preview Scale",
"onion_skin_frame_step": "Frame step",
"onion_skin_post_color": "Post Color",
"onion_skin_pre_color": "Pre Color",
"onion_skin_top": "Draw on top",
"panel_animation_lock_y": "Lock/Unlock Y easing",
"panel_debug_overlay": "Debug overlay",
"panel_inspector_axis_separate": "Separate axis",
"panel_inspector_extract_multiple": "Extract to...",
"panel_inspector_extract_single": "Extract to node",
"panel_inspector_pop_text": "Pop up Editor",
"panel_menu_export_render_all": "Render disabled node when export",
"panel_menu_steam_workshop": "Steam Workshop",
"panel_menu_tester": "Tester",
"pref_connection_highlight_fade": "Fade connection", "pref_connection_highlight_fade": "Fade connection",
"pref_connection_highlight": "Highlight connection", "pref_connection_highlight": "Highlight connection",
"pref_connection_quality": "Render quality", "pref_connection_quality": "Render quality",
"preview_3d_settings": "3D Preview Settings",
"preview_grid_settings": "Grid Settings",
"preview_onion_skin_settings": "Onion skin Settings",
"project_graphGrid_color": "Grid color",
"project_graphGrid_opacity": "Grid opacity",
"project_modified": "Project modified",
"project_settings": "Project Settings",
"save_project_'{1}'_before_exit?": "Save project '{1}' before exit?",
"widget_control_point_move": "Move",
"widget_control_point_wind": "Wind",
"widget_range_constant": "Constant",
"widget_range_random": "Random Range",
"widget_rotator_random_double_range": "Double Range",
"widget_rotator_random_double_span": "Double Span",
"widget_rotator_random_range": "Range",
"widget_rotator_random_span": "Span",
"pref_clear_temp": "Clear temp file on close.",
"pref_connection_type": "Connection type",
"pref_use_alt": "Use ALT for",
"meta_old_version": "Created on an older version",
"open_in_safe_mode": "Open in safe mode",
"group_properties": "Group Properties",
"panel_inspector_axis_combine": "Combine axis",
"panel_inspector_disable_expression": "Disable expression",
"new_folder": "New folder",
"panel_graph_enter_group_new_tab": "Open group in new tab",
"set_as_group_tool": "Set as group tool",
"panel_graph_align_nodes": "Align nodes",
"panel_graph_copy_prop": "Copy all properties",
"panel_graph_paste_prop": "Paste all properties",
"node_color": "Node Color",
"connection_color": "Connection Color",
"pref_pages_interface": "Interface",
"pref_directory_temp": "Temp path (restart required)",
"pref_inspector_focus_on_double_click": "Focus on double click",
"notification": "Notification",
"pref_pan_key": "Panning key",
"reload_theme": "Reload theme",
"reset_layout": "Reset layout",
"close_current_project": "Close current project",
"panel_menu_connect_patreon": "Connect to Patreon",
"pref_directory_ImageMagick": "ImageMagick path*",
"pref_directory_webp": "Webp path*",
"pref_directory_gifski": "Gifski path*",
"pref_directory_FFmpeg": "FFmpeg path*",
"pref_supporter_icon": "Show supporter icon",
"pref_graph_group_in_tab": "Open group in new tab",
"pref_widget_autocomplete_delay": "Code Autocomplete delay",
"panel_collection_workshop_update": "Update Steam Workshop content",
"meta_new_version": "Created on a newer version",
"pref_ui_font": "Overwrite UI font",
"panel_menu_node_credit": "Node credit dialog",
"panel_graph_toggle_parameter" : "Toggle node parameters",
"panel_graph_group_require_shift" : "Hold Shift to enter group",
"pref_add_node_remember" : "Remember add node position",
"pref_preview_show_real_fps" : "Show real fps",
"pref_widget_textbox_shake" : "Textbox shake",
"pref_widget_textbox_particles" : "Textbox particles",
"panel_menu_test_error" : "Display Error",
"pref_node_param_show" : "Show paramater on new node",
"panel_menu_test_warning" : "Display Warning",
"pref_node_param_width" : "Default param width",
"panel_menu_test_gen_theme" : "Generate theme object",
"collapse_toggle" : "Collapse Toggle",
"panel_animation_name_only" : "Node name",
"toggle_nodes" : "Toggle nodes",
"panel_animation_name_type" : "Node type",
"toggle_parameters" : "Toggle parameters",
"panel_driver" : "Driver...",
"panel_preview_lock_preview" : "Lock previewing node",
// 1.16
"global_variables": "Global Variables",
"panel_animation_keyframe_edit": "Edit Value...",
"panel_graph_hide_disconnected": "Hide stray junctions",
"panel_graph_tunnel": "Create tunnels",
"art_by_kenney": "Art by Kenney",
"panel_menu_reset_layout": "Reset layout",
"panel_graph_toggle_minimap": "Toggle minimap",
"" : "" "" : ""
} }

File diff suppressed because it is too large Load diff

View file

@ -190,23 +190,297 @@
"zoom_to_fit": "Zoom to fit", "zoom_to_fit": "Zoom to fit",
"zoom": "Zoom", "zoom": "Zoom",
"onion_skin": "Onion skin",
"default_surface": "Default Surface",
"palette": "Palette",
"misc": "Misc",
"action": "Action", "action": "Action",
"custom": "Custom",
"light": "Light",
"legacy": "Legacy",
"region": "Region",
"armature": "Armature", "armature": "Armature",
"surface": "Surface",
"buffer": "Buffer", "buffer": "Buffer",
"shader": "Shader", "curve": "Curve",
"system": "System", "custom": "Custom",
"linked": "Linked", "default_surface": "Default Surface",
"euler": "Euler",
"format_": "Format ",
"independent": "Independent", "independent": "Independent",
"legacy": "Legacy",
"light": "Light",
"linked": "Linked",
"misc.": "Misc.",
"misc": "Misc",
"number": "Number",
"onion_skin": "Onion skin",
"opacity": "Opacity",
"output": "Output", "output": "Output",
"palette": "Palette",
"path": "Path",
"quaternion": "Quaternion",
"radius": "radius",
"region": "Region",
"render": "Render",
"save_all": "Save all",
"scale": "Scale",
"settings": "Settings",
"shader": "Shader",
"shape": "Shape", "shape": "Shape",
"render": "Render" "surface": "Surface",
"system": "System",
"text": "Text",
"3d_camera": "3D Camera",
"add_bones": "Add bones",
"add_node": "Add node",
"add_number": "Add number",
"add_vector2": "Add vector2",
"add_vector3": "Add vector3",
"add_vector4": "Add vector4",
"adjust_control_point": "Adjust control point",
"anchor_add_/_remove": "Anchor add / remove",
"anchor_remove": "Anchor remove",
"array": "Array",
"assetbox": "Assetbox",
"bg": "Bg",
"blend": "Blend",
"canvas_blend": "Canvas blend",
"canvas": "Canvas",
"circle_path": "Circle path",
"close_file": "Close file",
"collection": "Collection",
"color_picker": "Color picker",
"comb": "Comb",
"copy_property": "Copy property",
"delete_(break)": "Delete (break)",
"delete_(merge)": "Delete (merge)",
"delete_keys": "Delete keys",
"detach_bones": "Detach bones",
"dialog": "Dialog",
"draw_path": "Draw path",
"edit_control_point": "Edit control point",
"ellipse": "Ellipse",
"eraser": "Eraser",
"fill": "Fill",
"first_frame": "First frame",
"focus_content": "Focus content",
"full_panel": "Full panel",
"grab": "Grab",
"ik": "IK",
"import_image_array": "Import image array",
"import_image": "Import image",
"last_frame": "Last frame",
"main": "Main",
"mesh_edit": "Mesh edit",
"mesh_warp": "Mesh Warp",
"move_target": "Move Target",
"new_file": "New file",
"next_frame": "Next frame",
"open_notification": "Open notification",
"pan": "Pan",
"panel": "Panel",
"paste_property": "Paste property",
"path_anchor": "Path Anchor",
"pencil": "Pencil",
"pin_mesh": "Pin mesh",
"play/pause": "Play/Pause",
"preview_focusing_node": "Preview focusing node",
"preview_window": "Preview window",
"previous_frame": "Previous frame",
"push": "Push",
"rectangle_path": "Rectangle path",
"rectangle": "Rectangle",
"remove_bones": "Remove bones",
"render_all": "Render all",
"resume/pause": "Resume/Pause",
"rigid_object": "Rigid Object",
"rotate": "Rotate",
"rotation": "Rotation",
"save_all_current_frame": "Save all current frame",
"save_current_frame": "Save current frame",
"scrollbar": "Scrollbar",
"select_all": "Select all",
"selection": "Selection",
"shorten": "Shorten",
"strand_create": "Strand Create",
"stretch": "Stretch",
"surfaces": "Surfaces",
"toggle_animation": "Toggle animation",
"toggle_grid": "Toggle grid",
"toggle_preview": "Toggle preview",
"toggle_render": "Toggle render",
"transform_node": "Transform node",
"widget": "Widget",
"workshop": "Workshop",
"rename": "Rename",
"inputs": "Inputs",
"save/load": "Save/Load",
"crash": "Crash",
"splash": "Splash",
"quality": "Quality",
"display": "Display",
"data": "Data",
"layers": "Layers",
"brush": "Brush",
"sprite": "Sprite",
"spawn": "Spawn",
"movement": "Movement",
"physics": "Physics",
"ground": "Ground",
"wiggles": "Wiggles",
"sdf": "SDF",
"level": "Level",
"channel": "Channel",
"solid": "Solid",
"noise": "Noise",
"pattern": "Pattern",
"related": "Related",
"uncategorized": "uncategorized",
"libraries": "Libraries",
"extra": "Extra",
"modify": "Modify",
"points": "Points",
"text_area": "Text Area",
"safe_mode": "SAFE MODE",
"read_only": "READ ONLY",
"untitled": "Untitled",
"supporter": "Supporter",
"supporter_exclusive": "Supporter exclusive",
"external": "External",
"mk_effects": "MK Effects",
"flip_fluid": "FLIP Fluid",
"projects": "Projects",
"project": "Project",
"portable_project_(.zip)": "Portable project (.zip)",
"brightness": "Brightness",
"alpha": "Alpha",
"material": "Material",
"packing": "Packing",
"resume" : "Resume",
// 1.16
"histogram" : "Histogram",
"background": "Background",
"search": "Search",
"welcome_files": "Welcome Files",
"palette_mixer": "Palette Mixer",
"file_explorer": "File Explorer",
"show_avatar" : "Show Avatar",
"open_in_explorer" : "Open in explorer",
"downloads": "Downloads",
"label": "Label",
"list": "List",
"view_mode": "View mode",
"palettes_mixer": "Palettes Mixer",
"release_note": "Release note",
//1.17.10
"3d_back_view" : "3D Back view",
"3d_bottom_view" : "3D Bottom view",
"3d_front_view" : "3D Front view",
"3d_left_view_" : "3D Left view ",
"3d_right_view_" : "3D Right view ",
"3d_sdf_view_settings" : "3D SDF View Settings",
"3d_snap_settings" : "3D Snap Settings",
"3d_top_view" : "3D Top view",
"3d_view_settings" : "3D View Settings",
"add_display" : "Add Display",
"addons_menu" : "Addons Menu",
"animate" : "Animate",
"append" : "Append",
"auto_align" : "Auto Align",
"blend_canvas" : "Blend Canvas",
"clear_all_notifications" : "Clear all notifications",
"clear_log_messages" : "Clear log messages",
"clear_warning_messages" : "Clear warning messages",
"close_all_files" : "Close all files",
"close_project" : "Close project",
"collapse_all_sections" : "Collapse All Sections",
"combine_axis" : "Combine Axis",
"command_palette" : "Command Palette",
"connection_settings" : "Connection Settings",
"console" : "Console",
"copy_color_hex" : "Copy Color Hex",
"copy_color" : "Copy Color",
"copy_current_frame" : "Copy Current Frame",
"copy_to_canvas" : "Copy to Canvas",
"copy_value" : "Copy Value",
"create_tunnel" : "Create Tunnel",
"delete_collection" : "Delete Collection",
"disable_expression" : "Disable Expression",
"dopesheet_collapse" : "Dopesheet Collapse",
"dopesheet_expand" : "Dopesheet Expand",
"driver" : "Driver",
"edit_keyframe_value" : "Edit Keyframe Value",
"edit_meta" : "Edit Meta",
"enter_group" : "Enter Group",
"expand_all_sections" : "Expand All Sections",
"export_.zip" : "Export .zip",
"export_all" : "Export all",
"export_as_image" : "Export As Image",
"export_hovering_node" : "Export Hovering Node",
"export_selected_node" : "Export Selected Node",
"extract_value" : "Extract Value",
"globalvar" : "Globalvar",
"grid_settings" : "Grid Settings",
"hide_disconnected" : "Hide Disconnected",
"import_.zip" : "Import .zip",
"lock_keyframe_y" : "Lock Keyframe Y",
"new_preview_window" : "New Preview Window",
"onion_skin_settings" : "Onion Skin Settings",
"open_at" : "Open at",
"open_autosave_folder" : "Open Autosave Folder",
"open_group_in_new_tab" : "Open Group In New Tab",
"open_log_file" : "Open log file",
"open_safe" : "Open Safe",
"paste_value" : "Paste Value",
"remove_group" : "Remove Group",
"rename_group" : "Rename Group",
"replace" : "Replace",
"reset_animation" : "Reset Animation",
"reset_range" : "Reset Range",
"reset_to_default" : "Reset To Default",
"save_all_current_frames" : "Save All Current Frames",
"save_at" : "Save at",
"save_to_focused_file" : "Save to focused file",
"scale_x1" : "Scale x1",
"scale_x2" : "Scale x2",
"scale_x4" : "Scale x4",
"scale_x8" : "Scale x8",
"scaler" : "Scaler",
"send_to_inspector" : "Send To Inspector",
"send_to_preview_window" : "Send To Preview Window",
"send_to_preview" : "Send To Preview",
"separate_axis" : "Separate Axis",
"set_range_end" : "Set Range End",
"set_range_start" : "Set Range Start",
"set_tile_both" : "Set Tile Both",
"set_tile_horizontal" : "Set Tile Horizontal",
"set_tile_off" : "Set Tile Off",
"set_tile_vertical" : "Set Tile Vertical",
"snap_nodes" : "Snap Nodes",
"stagger" : "Stagger",
"tiling_settings" : "Tiling Settings",
"toggle_avoid_label" : "Toggle Avoid Label",
"toggle_bypass" : "Toggle Bypass",
"toggle_compute" : "Toggle Compute",
"toggle_control" : "Toggle Control",
"toggle_dimension" : "Toggle Dimension",
"toggle_grid_snap" : "Toggle Grid Snap",
"toggle_lock" : "Toggle Lock",
"toggle_minimap" : "Toggle Minimap",
"toggle_onion_skin_view" : "Toggle Onion Skin view",
"toggle_onion_skin" : "Toggle Onion Skin",
"toggle_pixel_grid" : "Toggle Pixel Grid",
"toggle_reset_view" : "Toggle Reset View",
"toggle_show_info" : "Toggle Show Info",
"toggle_show_origin" : "Toggle Show Origin",
"toggle_snap_to_grid" : "Toggle Snap to Grid",
"toggle_split_view" : "Toggle Split View",
"toggle_tile" : "Toggle Tile",
"update_steam" : "Update Steam",
"update_thumbnail" : "Update Thumbnail",
"upload_to_steam" : "Upload To Steam",
"use_expression" : "Use Expression",
"view_settings" : "View Settings",
"" : ""
} }

View file

@ -98,7 +98,7 @@ event_inherited();
var io = global.NODE_GUIDE[$ node.node]; var io = global.NODE_GUIDE[$ node.node];
if(node_called) { if(node_called) {
var call_in = node_called.connect_type == JUNCTION_CONNECT.input; var call_in = node_called.connect_type == CONNECT_TYPE.input;
var ar = call_in? io.outputs : io.inputs; var ar = call_in? io.outputs : io.inputs;
var typ = node_called.type; var typ = node_called.type;
@ -228,7 +228,7 @@ event_inherited();
//try to connect //try to connect
if(node_called != noone) { //dragging from junction if(node_called != noone) { //dragging from junction
var _call_input = node_called.connect_type == JUNCTION_CONNECT.input; var _call_input = node_called.connect_type == CONNECT_TYPE.input;
var _junc_list = _call_input? _outputs : _inputs; var _junc_list = _call_input? _outputs : _inputs;
for(var i = 0; i < array_length(_junc_list); i++) { for(var i = 0; i < array_length(_junc_list); i++) {
@ -407,7 +407,7 @@ event_inherited();
if(node_called != noone) { if(node_called != noone) {
array_append(sug, nodeReleatedQuery( array_append(sug, nodeReleatedQuery(
node_called.connect_type == JUNCTION_CONNECT.input? "connectTo" : "connectFrom", node_called.connect_type == CONNECT_TYPE.input? "connectTo" : "connectFrom",
node_called.type node_called.type
)); ));
} }

View file

@ -53,7 +53,7 @@
bx -= bw + ui(4); bx -= bw + ui(4);
var txt = __txtx("cancel", "Cancel"); var txt = __txt("Cancel");
var icon = THEME.cross; var icon = THEME.cross;
var clr = COLORS._main_value_negative; var clr = COLORS._main_value_negative;

View file

@ -30,8 +30,8 @@ event_inherited();
function setNode(node, type) { function setNode(node, type) {
self.node = node; self.node = node;
self.type = type; self.type = type;
self.display_list = type == JUNCTION_CONNECT.input? node.attributes.input_display_list : node.attributes.output_display_list; self.display_list = type == CONNECT_TYPE.input? node.attributes.input_display_list : node.attributes.output_display_list;
self.junction_list = type == JUNCTION_CONNECT.input? node.inputs : node.outputs; self.junction_list = type == CONNECT_TYPE.input? node.inputs : node.outputs;
} }
#endregion #endregion

View file

@ -23,7 +23,7 @@ if !ready exit;
var bx = dialog_x + dialog_w - ui(32 + 16); var bx = dialog_x + dialog_w - ui(32 + 16);
var by = dialog_y + ui(16); var by = dialog_y + ui(16);
if(type == JUNCTION_CONNECT.input) { if(type == CONNECT_TYPE.input) {
var _txt = __txtx("dialog_group_order_add", "Add separator"); var _txt = __txtx("dialog_group_order_add", "Add separator");
if(buttonInstant(THEME.button_hide, bx, by, ui(32), ui(32), mouse_ui, sFOCUS, sHOVER, _txt, THEME.add_16, 1, COLORS._main_value_positive) == 2) { if(buttonInstant(THEME.button_hide, bx, by, ui(32), ui(32), mouse_ui, sFOCUS, sHOVER, _txt, THEME.add_16, 1, COLORS._main_value_positive) == 2) {
array_push(node.attributes.input_display_list, [ "Separator", false ]); array_push(node.attributes.input_display_list, [ "Separator", false ]);

View file

@ -56,6 +56,7 @@
var t = current_time; var t = current_time;
PREF_LOAD(); log_message("SESSION", $"> init Preferences | complete in {get_timer() - t}"); t = get_timer(); PREF_LOAD(); log_message("SESSION", $"> init Preferences | complete in {get_timer() - t}"); t = get_timer();
if(!IS_CMD) { __initLocale(); log_message("SESSION", $"> init Locale | complete in {get_timer() - t}"); t = get_timer(); }
if(!IS_CMD) { __initHotKey(); log_message("SESSION", $"> init Hotkeys | complete in {get_timer() - t}"); t = get_timer(); } if(!IS_CMD) { __initHotKey(); log_message("SESSION", $"> init Hotkeys | complete in {get_timer() - t}"); t = get_timer(); }
__fnInit(); __fnInit();
@ -75,7 +76,6 @@
__initKeys() __initKeys()
__initPatreon(); log_message("SESSION", $"> init Patreon | complete in {get_timer() - t}"); t = get_timer(); __initPatreon(); log_message("SESSION", $"> init Patreon | complete in {get_timer() - t}"); t = get_timer();
if(!IS_CMD) { __initTheme(); log_message("SESSION", $"> init Theme | complete in {get_timer() - t}"); t = get_timer(); } if(!IS_CMD) { __initTheme(); log_message("SESSION", $"> init Theme | complete in {get_timer() - t}"); t = get_timer(); }
if(!IS_CMD) { __initLocale(); log_message("SESSION", $"> init Locale | complete in {get_timer() - t}"); t = get_timer(); }
if(!IS_CMD) { loadFonts(); log_message("SESSION", $"> init Font | complete in {get_timer() - t}"); t = get_timer(); } if(!IS_CMD) { loadFonts(); log_message("SESSION", $"> init Font | complete in {get_timer() - t}"); t = get_timer(); }
if(!IS_CMD) { __initProject(); log_message("SESSION", $"> init Project | complete in {get_timer() - t}"); t = get_timer(); } if(!IS_CMD) { __initProject(); log_message("SESSION", $"> init Project | complete in {get_timer() - t}"); t = get_timer(); }

View file

@ -66,7 +66,7 @@ function __Node_3D_Combine(_x, _y, _group = noone) : Node(_x, _y, _group) constr
static createNewInput = function() { static createNewInput = function() {
var index = array_length(inputs); var index = array_length(inputs);
newInput(index, nodeValue("3D object", self, JUNCTION_CONNECT.input, VALUE_TYPE.d3object, noone )) newInput(index, nodeValue("3D object", self, CONNECT_TYPE.input, VALUE_TYPE.d3object, noone ))
.setVisible(true, true); .setVisible(true, true);
array_push(input_display_list, index); array_push(input_display_list, index);

View file

@ -27,7 +27,7 @@ function __Node_3D_Displace(_x, _y, _group = noone) : Node_Processor(_x, _y, _gr
newInput(10, nodeValue_Color("Ambient color", self, c_grey)); newInput(10, nodeValue_Color("Ambient color", self, c_grey));
newInput(11, nodeValue("3D vertex", self, JUNCTION_CONNECT.input, VALUE_TYPE.d3vertex, [])) newInput(11, nodeValue("3D vertex", self, CONNECT_TYPE.input, VALUE_TYPE.d3vertex, []))
.setVisible(true, true); .setVisible(true, true);
newInput(12, nodeValue_Enum_Button("Projection", self, 0, [ "Orthographic", "Perspective" ])) newInput(12, nodeValue_Enum_Button("Projection", self, 0, [ "Orthographic", "Perspective" ]))

View file

@ -1,7 +1,7 @@
function __Node_3D_Export(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { function __Node_3D_Export(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
name = "3D Export"; name = "3D Export";
newInput(0, nodeValue("Vertex data", self, JUNCTION_CONNECT.input, VALUE_TYPE.d3vertex, [] )) newInput(0, nodeValue("Vertex data", self, CONNECT_TYPE.input, VALUE_TYPE.d3vertex, [] ))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Path("Path", self, "", "Export location without '.obj' extension." )) newInput(1, nodeValue_Path("Path", self, "", "Export location without '.obj' extension." ))

View file

@ -14,12 +14,12 @@ function Node_3D_Object(_x, _y, _group = noone) : Node_3D(_x, _y, _group) constr
newInput(2, nodeValue_Vec3("Scale", self, [ 1, 1, 1 ])); newInput(2, nodeValue_Vec3("Scale", self, [ 1, 1, 1 ]));
inputs[3] = nodeValue_Vec3("Anchor", self, [ 0, 0, 0 ], { newInput(3, nodeValue_Vec3("Anchor", self, [ 0, 0, 0 ], {
linkable: false, linkable: false,
side_button : button(function() { apply_anchor = !apply_anchor; triggerRender(); }) side_button : button(function() { apply_anchor = !apply_anchor; triggerRender(); })
.setIcon(THEME.icon_3d_anchor, [ function() /*=>*/ {return apply_anchor} ], c_white) .setIcon(THEME.icon_3d_anchor, [ function() /*=>*/ {return apply_anchor} ], c_white)
.setTooltip("Apply Position") .setTooltip("Apply Position")
}); }));
in_d3d = array_length(inputs); in_d3d = array_length(inputs);

View file

@ -26,7 +26,7 @@ function __Node_3D_Repeat(_x, _y, _group = noone) : Node(_x, _y, _group) constru
newInput(10, nodeValue_Color("Ambient color", self, c_grey)); newInput(10, nodeValue_Color("Ambient color", self, c_grey));
newInput(11, nodeValue("3D object", self, JUNCTION_CONNECT.input, VALUE_TYPE.d3object, noone)) newInput(11, nodeValue("3D object", self, CONNECT_TYPE.input, VALUE_TYPE.d3object, noone))
.setVisible(true, true); .setVisible(true, true);
newInput(12, nodeValue_Int("Repeat", self, 1, "Amount of copies to be generated.")); newInput(12, nodeValue_Int("Repeat", self, 1, "Amount of copies to be generated."));

View file

@ -27,7 +27,7 @@ function __Node_3D_Transform(_x, _y, _group = noone) : Node_Processor(_x, _y, _g
newInput(10, nodeValue_Color("Ambient color", self, c_grey)); newInput(10, nodeValue_Color("Ambient color", self, c_grey));
newInput(11, nodeValue("3D object", self, JUNCTION_CONNECT.input, VALUE_TYPE.d3object, noone)) newInput(11, nodeValue("3D object", self, CONNECT_TYPE.input, VALUE_TYPE.d3object, noone))
.setVisible(true, true); .setVisible(true, true);
newInput(12, nodeValue_Enum_Button("Projection", self, 0, [ "Orthographic", "Perspective" ])) newInput(12, nodeValue_Enum_Button("Projection", self, 0, [ "Orthographic", "Perspective" ]))

View file

@ -26,7 +26,7 @@ function Node_VFX_effector(_x, _y, _group = noone) : Node(_x, _y, _group) constr
newInput(1, nodeValue_Area("Area", self, DEF_AREA)) newInput(1, nodeValue_Area("Area", self, DEF_AREA))
.rejectArray(); .rejectArray();
newInput(2, nodeValue("Falloff", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01 )) newInput(2, nodeValue("Falloff", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01 ))
.rejectArray(); .rejectArray();
newInput(3, nodeValue_Float("Falloff distance", self, 4 )) newInput(3, nodeValue_Float("Falloff distance", self, 4 ))

View file

@ -49,7 +49,7 @@ function Node_Custom(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co
for( var i = 0, n = array_length(info.inputs); i < n; i++ ) { for( var i = 0, n = array_length(info.inputs); i < n; i++ ) {
var _input = info.inputs[i]; var _input = info.inputs[i];
newInput(i, nodeValue(_input.name, self, JUNCTION_CONNECT.input, value_type_from_string(_input.type), _input.value)) newInput(i, nodeValue(_input.name, self, CONNECT_TYPE.input, value_type_from_string(_input.type), _input.value))
.setVisible(_input.show_in_inspector, _input.show_in_graph); .setVisible(_input.show_in_inspector, _input.show_in_graph);
input_index_map[? _input.name] = i; input_index_map[? _input.name] = i;

View file

@ -10,7 +10,7 @@ function nodeValue_Vector(_name, _node, _value, _data = {}) {
return new NodeValue_Array(_name, _node, _value, "", _len); return new NodeValue_Array(_name, _node, _value, "", _len);
} }
function NodeValue_Array(_name, _node, _value, _tooltip = "", _length = 2) : NodeValue(_name, _node, JUNCTION_CONNECT.input, VALUE_TYPE.float, _value, _tooltip) constructor { function NodeValue_Array(_name, _node, _value, _tooltip = "", _length = 2) : NodeValue(_name, _node, CONNECT_TYPE.input, VALUE_TYPE.float, _value, _tooltip) constructor {
data_array_length = _length; data_array_length = _length;

View file

@ -1,6 +1,6 @@
function nodeValue_Object(_name, _node, _value, _tooltip = "") { return new NodeValue_Object(_name, _node, _value, _tooltip); } function nodeValue_Object(_name, _node, _value, _tooltip = "") { return new NodeValue_Object(_name, _node, _value, _tooltip); }
function __NodeValue_Object(_name, _node, _type, _value, _tooltip = "") : NodeValue(_name, _node, JUNCTION_CONNECT.input, _type, _value, _tooltip) constructor { function __NodeValue_Object(_name, _node, _type, _value, _tooltip = "") : NodeValue(_name, _node, CONNECT_TYPE.input, _type, _value, _tooltip) constructor {
animable = false; animable = false;

View file

@ -79,9 +79,11 @@ function Panel_Linear_Setting() : PanelContent() constructor {
_widg.setFocusHover(pFOCUS, pHOVER); _widg.setFocusHover(pFOCUS, pHOVER);
_widg.register(); _widg.register();
var _whover = false;
if(pHOVER && point_in_rectangle(mx, my, 0, yy - th / 2, w, yy + th / 2)) { if(pHOVER && point_in_rectangle(mx, my, 0, yy - th / 2, w, yy + th / 2)) {
bg_y_to = yy - th / 2; bg_y_to = yy - th / 2;
_hov = true; _hov = true;
_whover = true;
} }
draw_set_text(f_p1, fa_left, fa_center, COLORS._main_text); draw_set_text(f_p1, fa_left, fa_center, COLORS._main_text);
@ -104,7 +106,7 @@ function Panel_Linear_Setting() : PanelContent() constructor {
if(_prop.action != noone) { if(_prop.action != noone) {
var _key = _prop.action.hotkey; var _key = _prop.action.hotkey;
if(_hov && !_widg.inBBOX([ mx, my ]) && mouse_press(mb_right)) { if(_whover && !_widg.inBBOX([ mx, my ]) && mouse_press(mb_right)) {
selecting_menu = _key; selecting_menu = _key;
var context_menu_settings = [ var context_menu_settings = [

View file

@ -25,13 +25,13 @@ function Node_VFX_Spawner_Base(_x, _y, _group = noone) : Node(_x, _y, _group) co
newInput(10, nodeValue_Vec2_Range("Spawn scale", self, [ 1, 1, 1, 1 ] , { linked : true })); newInput(10, nodeValue_Vec2_Range("Spawn scale", self, [ 1, 1, 1, 1 ] , { linked : true }));
newInput(11, nodeValue("Scale over time", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_11 )); newInput(11, nodeValue("Scale over time", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_11 ));
newInput(12, nodeValue_Gradient("Color over lifetime", self, new gradientObject(cola(c_white)))); newInput(12, nodeValue_Gradient("Color over lifetime", self, new gradientObject(cola(c_white))));
newInput(13, nodeValue_Range("Alpha", self, [ 1, 1 ], { linked : true })); newInput(13, nodeValue_Range("Alpha", self, [ 1, 1 ], { linked : true }));
newInput(14, nodeValue("Alpha over time", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_11)); newInput(14, nodeValue("Alpha over time", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_11));
newInput(15, nodeValue_Bool("Rotate by direction", self, false, "Make the particle rotates to follow its movement.")); newInput(15, nodeValue_Bool("Rotate by direction", self, false, "Make the particle rotates to follow its movement."));
@ -108,7 +108,7 @@ function Node_VFX_Spawner_Base(_x, _y, _group = noone) : Node(_x, _y, _group) co
newInput(46, nodeValue_PathNode("Path", self, noone )); newInput(46, nodeValue_PathNode("Path", self, noone ));
newInput(47, nodeValue("Path Deviation", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_11 )); newInput(47, nodeValue("Path Deviation", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_11 ));
newInput(48, nodeValue_Trigger("Reset Seed", self, false )) newInput(48, nodeValue_Trigger("Reset Seed", self, false ))
.setDisplay(VALUE_DISPLAY.button, { name: "Trigger" }) .setDisplay(VALUE_DISPLAY.button, { name: "Trigger" })

View file

@ -40,7 +40,7 @@ function _Node_Strand_Affector(_x, _y, _group = noone) : Node(_x, _y, _group) co
icon = THEME.strandSim; icon = THEME.strandSim;
setDimension(96, 48); setDimension(96, 48);
newInput(0, nodeValue("Strand", self, JUNCTION_CONNECT.input, VALUE_TYPE.strands, noone)) newInput(0, nodeValue("Strand", self, CONNECT_TYPE.input, VALUE_TYPE.strands, noone))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Enum_Scroll("Shape", self, 0, [ "Point", "Band" ])); newInput(1, nodeValue_Enum_Scroll("Shape", self, 0, [ "Point", "Band" ]));

View file

@ -2,80 +2,76 @@
globalvar DEBUG_COUNTER; globalvar DEBUG_COUNTER;
DEBUG_COUNTER = ds_map_create(); DEBUG_COUNTER = ds_map_create();
function __debug_counter(key) { // #mfunc log(msg) show_debug_message("[" + @@__FILE__ + ":" + @@__LINE_STR__ + "] " + string(msg))
if(ds_map_exists(DEBUG_COUNTER, key))
DEBUG_COUNTER[? key]++;
else
DEBUG_COUNTER[? key] = 1;
print(key + ": " + string(DEBUG_COUNTER[? key]));
}
#endregion #endregion
function _log_template() { #region function __debug_counter(key) {
if(ds_map_exists(DEBUG_COUNTER, key)) DEBUG_COUNTER[? key]++;
else DEBUG_COUNTER[? key] = 1;
print($"{key}: {DEBUG_COUNTER[? key]}");
}
function _log_template() {
INLINE INLINE
return $"{current_year}/{current_month}/{current_day} {string_lead_zero(current_hour, 2)}:{string_lead_zero(current_minute, 2)}:{string_lead_zero(current_second, 2)} > "; return $"{current_year}/{current_month}/{current_day} {string_lead_zero(current_hour, 2)}:{string_lead_zero(current_minute, 2)}:{string_lead_zero(current_second, 2)} > ";
} #endregion }
function __log(title, str, fname = "log/log.txt") { #region function __log(title, str, fname = "log/log.txt") {
var path = DIRECTORY + fname; var path = DIRECTORY + fname;
var f = file_text_open_append(path); var f = file_text_open_append(path);
var t = _log_template(); var t = _log_template();
file_text_write_string(f, $"{title}{t}{str}\n"); file_text_write_string(f, $"{title}{t}{str}\n");
file_text_close(f); file_text_close(f);
} #endregion }
function log_console(str, wait = false) { #region function log_console(str, wait = false) {
INLINE INLINE
show_debug_message($"CLI: {str}"); show_debug_message($"CLI: {str}");
if(wait) cli_wait(); if(wait) cli_wait();
return; return;
} #endregion }
function cli_wait() { #region function cli_wait() { INLINE show_debug_message("WAIT"); return; }
INLINE
show_debug_message("WAIT");
return;
} #endregion
function log_message(title, str, icon = noone, flash = false, write = true) { #region function log_message(title, str, icon = noone, flash = false, write = true) {
if(TEST_ERROR) return; if(TEST_ERROR) return;
if(IS_CMD) { show_debug_message($"{title}: {str}"); return; } if(IS_CMD) { show_debug_message($"{title}: {str}"); return; }
if(write) __log("[MESSAGE] ", $"{title}: {str}"); if(write) __log("[MESSAGE] ", $"{title}: {str}");
return noti_status($"{title}: {str}", icon, flash); return noti_status($"{title}: {str}", icon, flash);
} #endregion }
function log_warning(title, str, ref = noone) { #region function log_warning(title, str, ref = noone) {
if(TEST_ERROR) return; if(TEST_ERROR) return;
if(IS_CMD) { show_debug_message($"{title}: {str}"); return; } if(IS_CMD) { show_debug_message($"{title}: {str}"); return; }
__log("[WARNING] ", string(title) + ": " + string(str)); __log("[WARNING] ", string(title) + ": " + string(str));
return noti_warning(string(title) + ": " + string(str),, ref); return noti_warning(string(title) + ": " + string(str),, ref);
} #endregion }
function log_crash(str) { #region function log_crash(str) {
if(TEST_ERROR) return; if(TEST_ERROR) return;
if(IS_CMD) { show_debug_message($"{title}: {str}"); return; } if(IS_CMD) { show_debug_message($"{title}: {str}"); return; }
__log("[ERROR] ", string(str)); __log("[ERROR] ", string(str));
return noti_error(string(str)); return noti_error(string(str));
} #endregion }
function log_newline() { #region function log_newline() {
var path = DIRECTORY + "log/log.txt"; var path = DIRECTORY + "log/log.txt";
var f = file_text_open_write(path); var f = file_text_open_write(path);
file_text_writeln(f); file_text_writeln(f);
file_text_close(f); file_text_close(f);
} #endregion }
function log_clear() { #region function log_clear() {
var path = DIRECTORY + "log/log.txt"; var path = DIRECTORY + "log/log.txt";
if(file_exists_empty(path)) if(file_exists_empty(path))
file_delete(path); file_delete(path);
} #endregion }
function os_type_sting() { function os_type_sting() {
switch(os_type) { switch(os_type) {
@ -87,7 +83,7 @@ function os_type_sting() {
return "undefined"; return "undefined";
} }
function exception_print(e) { #region function exception_print(e) {
if(!is_struct(e) || !struct_has(e, "longMessage")) return string(e); if(!is_struct(e) || !struct_has(e, "longMessage")) return string(e);
var str = $"\n\n========== Crash log [PXC {VERSION_STRING}] [{os_type_sting()}] ==========\n\n" + e.longMessage; var str = $"\n\n========== Crash log [PXC {VERSION_STRING}] [{os_type_sting()}] ==========\n\n" + e.longMessage;
@ -99,9 +95,9 @@ function exception_print(e) { #region
str += "\n\n========= Crash log end =========\n"; str += "\n\n========= Crash log end =========\n";
return str; return str;
} #endregion }
function setException() { #region function setException() {
if(OS == os_macosx) return noone; if(OS == os_macosx) return noone;
exception_unhandled_handler(function(ex) { exception_unhandled_handler(function(ex) {
@ -137,11 +133,11 @@ function setException() { #region
return 0; return 0;
}); });
} #endregion }
function resetException() { exception_unhandled_handler(undefined); } function resetException() { exception_unhandled_handler(undefined); }
function printCallStack(maxDepth = 32) { #region function printCallStack(maxDepth = 32) {
var stack = debug_get_callstack(maxDepth); var stack = debug_get_callstack(maxDepth);
print($"Call Stack:"); print($"Call Stack:");
@ -170,4 +166,4 @@ function printCallStack(maxDepth = 32) { #region
} }
} }
print("") print("")
} #endregion }

View file

@ -37,10 +37,10 @@
globalvar HOTKEYS, HOTKEY_CONTEXT; globalvar HOTKEYS, HOTKEY_CONTEXT;
LATEST_VERSION = 1_16_00_0; LATEST_VERSION = 1_16_00_0;
VERSION = 1_17_10_3; VERSION = 1_17_10_4;
SAVE_VERSION = 1_17_10_0; SAVE_VERSION = 1_17_10_0;
VERSION_STRING = "1.17.10.3"; VERSION_STRING = "1.17.10.4";
BUILD_NUMBER = 1_17_10_3; BUILD_NUMBER = 1_17_10_4;
HOTKEYS = ds_map_create(); HOTKEYS = ds_map_create();
HOTKEY_CONTEXT = ds_list_create(); HOTKEY_CONTEXT = ds_list_create();

View file

@ -48,7 +48,7 @@ function __txtx(key, def = "") {
if(TEST_LOCALE) { if(TEST_LOCALE) {
if(key != "" && !struct_has(LOCALE.word, key) && !struct_has(LOCALE.ui, key)) { if(key != "" && !struct_has(LOCALE.word, key) && !struct_has(LOCALE.ui, key)) {
global.missing_locale[$ key] = def; global.missing_locale[$ key] = def;
show_debug_message($"LOCALE: {global.missing_locale}"); show_debug_message($"LOCALE: {global.missing_locale}\n");
return def; return def;
} }
return ""; return "";
@ -65,13 +65,12 @@ function __txt(txt, prefix = "") {
if(LOCALE_DEF && !TEST_LOCALE) return txt; if(LOCALE_DEF && !TEST_LOCALE) return txt;
var key = string_lower(txt); var key = string_replace_all(string_lower(txt), " ", "_");
key = string_replace_all(key, " ", "_");
if(TEST_LOCALE) { if(TEST_LOCALE) {
if(key != "" && !struct_has(LOCALE.word, key) && !struct_has(LOCALE.ui, key)) { if(key != "" && !struct_has(LOCALE.word, key) && !struct_has(LOCALE.ui, key)) {
global.missing_locale[$ key] = txt; global.missing_locale[$ key] = txt;
show_debug_message($"LOCALE: {global.missing_locale}"); show_debug_message($"LOCALE: {global.missing_locale}\n");
return txt; return txt;
} }
return ""; return "";
@ -143,7 +142,7 @@ function __txt_junction_name(node, type, index, def = "") {
return def; return def;
var nde = LOCALE.node[$ node]; var nde = LOCALE.node[$ node];
var lst = type == JUNCTION_CONNECT.input? nde.inputs : nde.outputs; var lst = type == CONNECT_TYPE.input? nde.inputs : nde.outputs;
if(index >= array_length(lst)) return def; if(index >= array_length(lst)) return def;
return lst[index].name; return lst[index].name;
@ -166,7 +165,7 @@ function __txt_junction_tooltip(node, type, index, def = "") {
return def; return def;
var nde = LOCALE.node[$ node]; var nde = LOCALE.node[$ node];
var lst = type == JUNCTION_CONNECT.input? nde.inputs : nde.outputs; var lst = type == CONNECT_TYPE.input? nde.inputs : nde.outputs;
if(index >= array_length(lst)) return def; if(index >= array_length(lst)) return def;
return lst[index].tooltip; return lst[index].tooltip;
@ -189,7 +188,7 @@ function __txt_junction_data(node, type, index, def = []) {
return def; return def;
var nde = LOCALE.node[$ node]; var nde = LOCALE.node[$ node];
var lst = type == JUNCTION_CONNECT.input? nde.inputs : nde.outputs; var lst = type == CONNECT_TYPE.input? nde.inputs : nde.outputs;
if(index >= array_length(lst)) return def; if(index >= array_length(lst)) return def;
if(!struct_has(lst[index], "display_data")) if(!struct_has(lst[index], "display_data"))

View file

@ -12,7 +12,7 @@ function Node_MK_Delay_Machine(_x, _y, _group = noone) : Node(_x, _y, _group) co
newInput(3, nodeValue_Palette("Blend over Delay", self, [ c_white ])); newInput(3, nodeValue_Palette("Blend over Delay", self, [ c_white ]));
newInput(4, nodeValue("Alpha over Delay", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_11)); newInput(4, nodeValue("Alpha over Delay", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_11));
newInput(5, nodeValue_Enum_Scroll("Palette Select", self, 0, [ "Loop", "Pingpong", "Random" ])); newInput(5, nodeValue_Enum_Scroll("Palette Select", self, 0, [ "Loop", "Pingpong", "Random" ]));

View file

@ -34,7 +34,7 @@ function drawWidget(xx, yy, ww, _m, jun, global_var = true, _hover = false, _foc
} }
var butx = xx; var butx = xx;
if(jun.connect_type == JUNCTION_CONNECT.input && jun.isAnimable() && !jun.expUse) { // animation if(jun.connect_type == CONNECT_TYPE.input && jun.isAnimable() && !jun.expUse) { // animation
var index = jun.hasJunctionFrom()? 2 : jun.is_anim; var index = jun.hasJunctionFrom()? 2 : jun.is_anim;
var cc = c_white; var cc = c_white;
@ -160,7 +160,7 @@ function drawWidget(xx, yy, ww, _m, jun, global_var = true, _hover = false, _foc
#endregion #endregion
#region anim #region anim
if(jun.connect_type == JUNCTION_CONNECT.input && breakLine && jun.is_anim) { if(jun.connect_type == CONNECT_TYPE.input && breakLine && jun.is_anim) {
var _anim = jun.animator; var _anim = jun.animator;
var bx = xx + ww - ui(12); var bx = xx + ww - ui(12);
@ -242,7 +242,7 @@ function drawWidget(xx, yy, ww, _m, jun, global_var = true, _hover = false, _foc
#endregion #endregion
#region right buttons #region right buttons
if(jun.connect_type == JUNCTION_CONNECT.input && breakLine && !jun.is_anim && !global_var) { if(jun.connect_type == CONNECT_TYPE.input && breakLine && !jun.is_anim && !global_var) {
var bx = xx + ww + ui(16); var bx = xx + ww + ui(16);
var by = lb_y; var by = lb_y;
var bs = ui(24); var bs = ui(24);
@ -339,7 +339,7 @@ function drawWidget(xx, yy, ww, _m, jun, global_var = true, _hover = false, _foc
} else if(wid && jun.display_type != VALUE_DISPLAY.none) { // edit widget } else if(wid && jun.display_type != VALUE_DISPLAY.none) { // edit widget
wid.setFocusHover(_focus, _hover); wid.setFocusHover(_focus, _hover);
if(jun.connect_type == JUNCTION_CONNECT.input) { if(jun.connect_type == CONNECT_TYPE.input) {
wid.setInteract(!jun.hasJunctionFrom()); wid.setInteract(!jun.hasJunctionFrom());
if(_focus) wid.register(_scrollPane); if(_focus) wid.register(_scrollPane);

View file

@ -17,10 +17,10 @@ function Node_2D_light(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
newInput(0, nodeValue_Surface("Surface in", self)); newInput(0, nodeValue_Surface("Surface in", self));
inputs[1] = nodeValue_Enum_Scroll("Light shape", self, 0, [ new scrollItem("Point", s_node_2d_light_shape, 0), newInput(1, nodeValue_Enum_Scroll("Light shape", self, 0, [ new scrollItem("Point", s_node_2d_light_shape, 0),
new scrollItem("Line", s_node_2d_light_shape, 1), new scrollItem("Line", s_node_2d_light_shape, 1),
new scrollItem("Line asymmetric", s_node_2d_light_shape, 2), new scrollItem("Line asymmetric", s_node_2d_light_shape, 2),
new scrollItem("Spot", s_node_2d_light_shape, 3), ]); new scrollItem("Spot", s_node_2d_light_shape, 3), ]));
newInput(2, nodeValue_Vec2("Center", self, [ 16, 16 ])) newInput(2, nodeValue_Vec2("Center", self, [ 16, 16 ]))
.setUnitRef(function(index) { return getDimension(index); }); .setUnitRef(function(index) { return getDimension(index); });
@ -45,10 +45,10 @@ function Node_2D_light(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
newInput(10, nodeValue_Int("Banding", self, 0)) newInput(10, nodeValue_Int("Banding", self, 0))
.setDisplay(VALUE_DISPLAY.slider, { range: [0, 16, 0.1] }); .setDisplay(VALUE_DISPLAY.slider, { range: [0, 16, 0.1] });
inputs[11] = nodeValue_Enum_Scroll("Attenuation", self, 0, newInput(11, nodeValue_Enum_Scroll("Attenuation", self, 0,
[ new scrollItem("Quadratic", s_node_curve, 0), [ new scrollItem("Quadratic", s_node_curve, 0),
new scrollItem("Invert quadratic", s_node_curve, 1), new scrollItem("Invert quadratic", s_node_curve, 1),
new scrollItem("Linear", s_node_curve, 2), ]) new scrollItem("Linear", s_node_curve, 2), ]))
.setTooltip("Control how light fade out over distance."); .setTooltip("Control how light fade out over distance.");
newInput(12, nodeValue_Int("Radial banding", self, 0)) newInput(12, nodeValue_Int("Radial banding", self, 0))

View file

@ -25,7 +25,7 @@ function Node_3D_Mesh_Path_Extrude(_x, _y, _group = noone) : Node_3D_Mesh(_x, _y
newInput(in_mesh + 7, nodeValue_Float("Radius", self, 0.25 )) newInput(in_mesh + 7, nodeValue_Float("Radius", self, 0.25 ))
.setDisplay(VALUE_DISPLAY.slider); .setDisplay(VALUE_DISPLAY.slider);
newInput(in_mesh + 8, nodeValue("Radius Over Path", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_11 )); newInput(in_mesh + 8, nodeValue("Radius Over Path", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_11 ));
newInput(in_mesh + 9, nodeValue_Vec2("Texture Scale", self, [ 1, 1 ] )); newInput(in_mesh + 9, nodeValue_Vec2("Texture Scale", self, [ 1, 1 ] ));

View file

@ -14,10 +14,10 @@ function Node_3D_Point_Affector(_x, _y, _group = noone) : Node_3D_Object(_x, _y,
newInput(in_d3d + 3, nodeValue_Float("Falloff distance", self, 0.5)); newInput(in_d3d + 3, nodeValue_Float("Falloff distance", self, 0.5));
newInput(in_d3d + 4, nodeValue("Falloff curve", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(in_d3d + 4, nodeValue("Falloff curve", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
inputs[in_d3d + 5] = nodeValue_Enum_Scroll("Shape", self, 0, [ new scrollItem("Sphere", s_node_3d_affector_shape, 0), newInput(in_d3d + 5, nodeValue_Enum_Scroll("Shape", self, 0, [ new scrollItem("Sphere", s_node_3d_affector_shape, 0),
new scrollItem("Plane", s_node_3d_affector_shape, 1), ]); new scrollItem("Plane", s_node_3d_affector_shape, 1), ]));
outputs[0] = nodeValue_Output("Output", self, VALUE_TYPE.float, [ 0, 0, 0 ]) outputs[0] = nodeValue_Output("Output", self, VALUE_TYPE.float, [ 0, 0, 0 ])
.setDisplay(VALUE_DISPLAY.vector); .setDisplay(VALUE_DISPLAY.vector);

View file

@ -9,7 +9,7 @@ function Node_FLIP_Add_Rigidbody(_x, _y, _group = noone) : Node(_x, _y, _group)
newInput(0, nodeValue_Fdomain("Domain", self, noone )) newInput(0, nodeValue_Fdomain("Domain", self, noone ))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue("Objects", self, JUNCTION_CONNECT.input, VALUE_TYPE.rigid, [] )) newInput(1, nodeValue("Objects", self, CONNECT_TYPE.input, VALUE_TYPE.rigid, [] ))
.setVisible(true, true); .setVisible(true, true);
input_display_list = [ 0, input_display_list = [ 0,

View file

@ -28,7 +28,7 @@ function Node_FLIP_Apply_Force(_x, _y, _group = noone) : Node(_x, _y, _group) co
newInput(1, nodeValue_Vec2("Position", self, [ 0, 0 ] )) newInput(1, nodeValue_Vec2("Position", self, [ 0, 0 ] ))
.setUnitRef(function(index) { return getDimension(); }); .setUnitRef(function(index) { return getDimension(); });
inputs[2] = nodeValue_Float("Radius", self, 4 ) newInput(2, nodeValue_Float("Radius", self, 4 ))
.setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] }); .setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] });
newInput(3, nodeValue_Enum_Scroll("Shape", self, 0 , [ new scrollItem("Circle", s_node_shape_circle, 0), new scrollItem("Rectangle", s_node_shape_rectangle, 0), ])); newInput(3, nodeValue_Enum_Scroll("Shape", self, 0 , [ new scrollItem("Circle", s_node_shape_circle, 0), new scrollItem("Rectangle", s_node_shape_rectangle, 0), ]));

View file

@ -12,7 +12,7 @@ function Node_FLIP_Apply_Velocity(_x, _y, _group = noone) : Node(_x, _y, _group)
newInput(1, nodeValue_Vec2("Position", self, [ 0, 0 ] )) newInput(1, nodeValue_Vec2("Position", self, [ 0, 0 ] ))
.setUnitRef(function(index) { return getDimension(); }); .setUnitRef(function(index) { return getDimension(); });
inputs[2] = nodeValue_Float("Radius", self, 4 ) newInput(2, nodeValue_Float("Radius", self, 4 ))
.setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] }); .setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] });
newInput(3, nodeValue_Vec2("Velocity", self, [ 0, 0 ] )); newInput(3, nodeValue_Vec2("Velocity", self, [ 0, 0 ] ));

View file

@ -14,7 +14,7 @@ function Node_FLIP_Destroy(_x, _y, _group = noone) : Node(_x, _y, _group) constr
newInput(2, nodeValue_Enum_Scroll("Shape", self, 0 , [ new scrollItem("Circle", s_node_shape_circle, 0), new scrollItem("Rectangle", s_node_shape_rectangle, 0), ])); newInput(2, nodeValue_Enum_Scroll("Shape", self, 0 , [ new scrollItem("Circle", s_node_shape_circle, 0), new scrollItem("Rectangle", s_node_shape_rectangle, 0), ]));
inputs[3] = nodeValue_Float("Radius", self, 4 ) newInput(3, nodeValue_Float("Radius", self, 4 ))
.setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] }); .setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] });
newInput(4, nodeValue_Vec2("Size", self, [ 4, 4 ] )); newInput(4, nodeValue_Vec2("Size", self, [ 4, 4 ] ));

View file

@ -19,8 +19,8 @@ function Node_FLIP_Render(_x, _y, _group = noone) : Node(_x, _y, _group) constru
newInput(5, nodeValue_Surface("Fluid particle", self)); newInput(5, nodeValue_Surface("Fluid particle", self));
inputs[6] = nodeValue_Enum_Scroll("Render type", self, 0, [ new scrollItem("Particle", s_node_flip_render, 0), newInput(6, nodeValue_Enum_Scroll("Render type", self, 0, [ new scrollItem("Particle", s_node_flip_render, 0),
new scrollItem("Line", s_node_flip_render, 1), ] ); new scrollItem("Line", s_node_flip_render, 1), ] ));
newInput(7, nodeValue_Bool("Threshold", self, true)); newInput(7, nodeValue_Bool("Threshold", self, true));

View file

@ -24,7 +24,7 @@ function Node_FLIP_Spawner(_x, _y, _group = noone) : Node(_x, _y, _group) constr
newInput(7, nodeValue_Surface("Spawn Surface", self)); newInput(7, nodeValue_Surface("Spawn Surface", self));
inputs[8] = nodeValue_Float("Spawn Radius", self, 2 ) newInput(8, nodeValue_Float("Spawn Radius", self, 2 ))
.setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] }); .setDisplay(VALUE_DISPLAY.slider, { range: [1, 16, 0.1] });
newInput(9, nodeValue_Int("Seed", self, seed_random(6))) newInput(9, nodeValue_Int("Seed", self, seed_random(6)))
@ -32,7 +32,7 @@ function Node_FLIP_Spawner(_x, _y, _group = noone) : Node(_x, _y, _group) constr
newInput(10, nodeValue_Rotation_Random("Spawn Direction", self, [ 0, 45, 135, 0, 0 ] )); newInput(10, nodeValue_Rotation_Random("Spawn Direction", self, [ 0, 45, 135, 0, 0 ] ));
inputs[11] = nodeValue_Float("Inherit Velocity", self, 0 ) newInput(11, nodeValue_Float("Inherit Velocity", self, 0 ))
.setDisplay(VALUE_DISPLAY.slider); .setDisplay(VALUE_DISPLAY.slider);
newInput(12, nodeValue_Int("Spawn Duration", self, 1 )); newInput(12, nodeValue_Int("Spawn Duration", self, 1 ));

View file

@ -1,9 +1,9 @@
function Node_PCX_Array_Get(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor { function Node_PCX_Array_Get(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor {
name = "Array Get"; name = "Array Get";
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(1, nodeValue("Index", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(1, nodeValue("Index", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -1,11 +1,11 @@
function Node_PCX_Array_Set(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor { function Node_PCX_Array_Set(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor {
name = "Array Set"; name = "Array Set";
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(1, nodeValue("Index", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(1, nodeValue("Index", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(2, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(2, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -1,11 +1,11 @@
function Node_PCX_Condition(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor { function Node_PCX_Condition(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor {
name = "Condition"; name = "Condition";
newInput(0, nodeValue("Condition", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Condition", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(1, nodeValue("True", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(1, nodeValue("True", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(2, nodeValue("False", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(2, nodeValue("False", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -53,7 +53,7 @@ function Node_PCX_Equation(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) co
newInput(index + 0, nodeValue_Text("Argument name", self, "" )) newInput(index + 0, nodeValue_Text("Argument name", self, "" ))
.setDisplay(VALUE_DISPLAY.text_box); .setDisplay(VALUE_DISPLAY.text_box);
newInput(index + 1, nodeValue("Argument value", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone )) newInput(index + 1, nodeValue("Argument value", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone ))
.setVisible(true, true); .setVisible(true, true);
inputs[index + 1].editWidget.interactable = false; inputs[index + 1].editWidget.interactable = false;

View file

@ -1,17 +1,17 @@
function Node_PCX_fn_Math(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor { function Node_PCX_fn_Math(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor {
name = "Math"; name = "Math";
inputs[0] = nodeValue_Enum_Scroll("Operator", self, 0, [ "Add", "Subtract", "Multiply", "Divide", "Power", "Modulo", "Absolute", -1, newInput(0, nodeValue_Enum_Scroll("Operator", self, 0, [ "Add", "Subtract", "Multiply", "Divide", "Power", "Modulo", "Absolute", -1,
"Round", "Floor", "Ceil", -1, "Round", "Floor", "Ceil", -1,
"Sin", "Cos", "Tan", "Arcsin", "Arccos", "Arctan", -1, "Sin", "Cos", "Tan", "Arcsin", "Arccos", "Arctan", -1,
"Min", "Max", "Clamp", -1, "Min", "Max", "Clamp", -1,
"Lerp" ]); "Lerp" ]));
newInput(1, nodeValue("x", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(1, nodeValue("x", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(2, nodeValue("y", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(2, nodeValue("y", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(3, nodeValue("z", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(3, nodeValue("z", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -1,9 +1,9 @@
function Node_PCX_fn_Random(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor { function Node_PCX_fn_Random(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor {
name = "Random"; name = "Random";
newInput(0, nodeValue("Min", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Min", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(1, nodeValue("Max", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(1, nodeValue("Max", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(2, nodeValue_Bool("Integer", self, false)); newInput(2, nodeValue_Bool("Integer", self, false));

View file

@ -1,7 +1,7 @@
function Node_PCX_fn_Surface_Height(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor { function Node_PCX_fn_Surface_Height(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor {
name = "Surface Height"; name = "Surface Height";
newInput(0, nodeValue("Surface", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Surface", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -1,7 +1,7 @@
function Node_PCX_fn_Surface_Width(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor { function Node_PCX_fn_Surface_Width(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constructor {
name = "Surface Width"; name = "Surface Width";
newInput(0, nodeValue("Surface", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Surface", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -2,7 +2,7 @@ function Node_PCX_fn_var(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) cons
name = "Fn Variable"; name = "Fn Variable";
w = 64; w = 64;
newInput(0, nodeValue("Default Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)); newInput(0, nodeValue("Default Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -3,7 +3,7 @@ function Node_PCX_var(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) constru
newInput(0, nodeValue_Text("Name", self, "")); newInput(0, nodeValue_Text("Name", self, ""));
newInput(1, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, -1)); newInput(1, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, -1));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone); outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone);

View file

@ -22,7 +22,7 @@ function Node_VCT(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) const
var _var = vct[$ key]; var _var = vct[$ key];
newInput(index, nodeValue(name, self, JUNCTION_CONNECT.input, _var.type, 0)) newInput(index, nodeValue(name, self, CONNECT_TYPE.input, _var.type, 0))
.setDisplay(_var.disp, _var.disp_data); .setDisplay(_var.disp, _var.disp_data);
inputs[index].display_data.key = key; inputs[index].display_data.key = key;

View file

@ -55,7 +55,7 @@ function Node_VFX_Renderer_Output(_x, _y, _group = noone) : Node_Group_Output(_x
if(!is_undefined(outParent)) if(!is_undefined(outParent))
array_remove(group.outputs, outParent); array_remove(group.outputs, outParent);
outParent = nodeValue("Rendered", group, JUNCTION_CONNECT.output, VALUE_TYPE.surface, noone) outParent = nodeValue("Rendered", group, CONNECT_TYPE.output, VALUE_TYPE.surface, noone)
.uncache() .uncache()
.setVisible(true, true); .setVisible(true, true);
outParent.from = self; outParent.from = self;

View file

@ -12,7 +12,7 @@ function Node_VFX_Spawner(_x, _y, _group = noone) : Node_VFX_Spawner_Base(_x, _y
inputs[21].setVisible(false, false); inputs[21].setVisible(false, false);
newInput(input_len + 0, nodeValue("Spawn trigger", self, JUNCTION_CONNECT.input, VALUE_TYPE.node, false)) newInput(input_len + 0, nodeValue("Spawn trigger", self, CONNECT_TYPE.input, VALUE_TYPE.node, false))
.setVisible(true, true); .setVisible(true, true);
newInput(input_len + 1, nodeValue_Int("Step interval", self, 1, "How often the 'on step' event is triggered.\nWith 1 being trigger every frame, 2 means triggered once every 2 frames.")); newInput(input_len + 1, nodeValue_Int("Step interval", self, 1, "How often the 'on step' event is triggered.\nWith 1 being trigger every frame, 2 means triggered once every 2 frames."));

View file

@ -4,7 +4,7 @@ function Node_Anim_Curve(_x, _y, _group = noone) : Node_Processor(_x, _y, _group
setDimension(96, 48); setDimension(96, 48);
newInput(0, nodeValue("Curve", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(0, nodeValue("Curve", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(1, nodeValue_Float("Progress", self, 0)) newInput(1, nodeValue_Float("Progress", self, 0))
.setDisplay(VALUE_DISPLAY.slider); .setDisplay(VALUE_DISPLAY.slider);

View file

@ -9,10 +9,10 @@ function Node_Area(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) cons
newInput(1, nodeValue_Vec2("Span", self, [ 16, 16 ] )) newInput(1, nodeValue_Vec2("Span", self, [ 16, 16 ] ))
.setVisible(true, true); .setVisible(true, true);
inputs[2] = nodeValue_Enum_Scroll("Shape", self, AREA_SHAPE.rectangle, [ newInput(2, nodeValue_Enum_Scroll("Shape", self, AREA_SHAPE.rectangle, [
new scrollItem("Rectangle", s_node_shape_rectangle, 0), new scrollItem("Rectangle", s_node_shape_rectangle, 0),
new scrollItem("Elipse", s_node_shape_circle, 0) new scrollItem("Elipse", s_node_shape_circle, 0)
]); ]));
newInput(3, nodeValue_Enum_Scroll("Type", self, 0, [ "Center Span", "Two Point" ])); newInput(3, nodeValue_Enum_Scroll("Type", self, 0, [ "Center Span", "Two Point" ]));

View file

@ -27,7 +27,7 @@ function Node_Armature_Pose(_x, _y, _group = noone) : Node(_x, _y, _group) const
static createNewInput = function(bone = noone) { static createNewInput = function(bone = noone) {
var index = array_length(inputs); var index = array_length(inputs);
newInput(index, nodeValue(bone != noone? bone.name : "bone", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, [ 0, 0, 0, 1 ] )) newInput(index, nodeValue(bone != noone? bone.name : "bone", self, CONNECT_TYPE.input, VALUE_TYPE.float, [ 0, 0, 0, 1 ] ))
.setDisplay(VALUE_DISPLAY.transform); .setDisplay(VALUE_DISPLAY.transform);
inputs[index].display_data.bone_id = bone != noone? bone.ID : noone; inputs[index].display_data.bone_id = bone != noone? bone.ID : noone;

View file

@ -36,7 +36,7 @@ function Node_Array(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
var index = array_length(inputs); var index = array_length(inputs);
var _typ = getType(); var _typ = getType();
newInput(index, nodeValue("Input", self, JUNCTION_CONNECT.input, _typ, -1 )) newInput(index, nodeValue("Input", self, CONNECT_TYPE.input, _typ, -1 ))
.setVisible(true, true); .setVisible(true, true);
array_push(input_display_list, index); array_push(input_display_list, index);
@ -156,4 +156,23 @@ function Node_Array(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
} }
static postConnect = function() { updateType(false); } static postConnect = function() { updateType(false); }
static onDrawNode = function(xx, yy, _mx, _my, _s, _hover, _focus) {
if(outputs[0].type == VALUE_TYPE.surface) return;
var bbox = drawGetBbox(xx, yy, _s);
draw_set_text(f_sdf, fa_left, fa_center, COLORS._main_text);
for(var i = input_fix_len; i < array_length(inputs); i += data_length) {
var val = inputs[i];
var key = getInputData(i, "");
if(!val.visible) continue;
var _ss = min(_s * .4, string_scale(key, bbox.w - 12 * _s, 9999));
draw_set_color(value_color(val.type));
draw_text_transformed(bbox.x0 + 6 * _s, val.y, key, _ss, _ss, 0);
}
}
} }

View file

@ -2,7 +2,7 @@ function Node_Array_Add(_x, _y, _group = noone) : Node(_x, _y, _group) construct
name = "Array Add"; name = "Array Add";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Bool("Spread array", self, false )) newInput(1, nodeValue_Bool("Spread array", self, false ))
@ -15,7 +15,7 @@ function Node_Array_Add(_x, _y, _group = noone) : Node(_x, _y, _group) construct
static createNewInput = function() { static createNewInput = function() {
var index = array_length(inputs); var index = array_length(inputs);
newInput(index, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, -1 )) newInput(index, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, -1 ))
.setVisible(true, true); .setVisible(true, true);
array_push(input_display_list, index); array_push(input_display_list, index);

View file

@ -2,7 +2,7 @@ function Node_Array_Copy(_x, _y, _group = noone) : Node(_x, _y, _group) construc
name = "Array Copy"; name = "Array Copy";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setArrayDepth(1) .setArrayDepth(1)
.setVisible(true, true); .setVisible(true, true);

View file

@ -2,10 +2,10 @@ function Node_Array_Find(_x, _y, _group = noone) : Node(_x, _y, _group) construc
name = "Array Find"; name = "Array Find";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(1, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true) .setVisible(true, true)
.rejectArray(); .rejectArray();

View file

@ -2,7 +2,7 @@ function Node_Array_Get(_x, _y, _group = noone) : Node(_x, _y, _group) construct
name = "Array Get"; name = "Array Get";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Int("Index", self, 0)) newInput(1, nodeValue_Int("Index", self, 0))

View file

@ -2,12 +2,12 @@ function Node_Array_Insert(_x, _y, _group = noone) : Node(_x, _y, _group) constr
name = "Array Insert"; name = "Array Insert";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Int("Index", self, 0)); newInput(1, nodeValue_Int("Index", self, 0));
newInput(2, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(2, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(3, nodeValue_Bool("Spread array", self, false )) newInput(3, nodeValue_Bool("Spread array", self, false ))

View file

@ -2,7 +2,7 @@ function Node_Array_Length(_x, _y, _group = noone) : Node(_x, _y, _group) constr
name = "Array Length"; name = "Array Length";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
outputs[0] = nodeValue_Output("Size", self, VALUE_TYPE.integer, 0); outputs[0] = nodeValue_Output("Size", self, VALUE_TYPE.integer, 0);

View file

@ -17,7 +17,7 @@ function Node_Array_Pin(_x, _y, _group = noone) : Node(_x, _y, _group) construct
static createNewInput = function() { static createNewInput = function() {
var index = array_length(inputs); var index = array_length(inputs);
newInput(index, nodeValue("Input", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, -1 )) newInput(index, nodeValue("Input", self, CONNECT_TYPE.input, VALUE_TYPE.any, -1 ))
.setVisible(true, true); .setVisible(true, true);
return inputs[index]; return inputs[index];
@ -68,7 +68,7 @@ function Node_Array_Pin(_x, _y, _group = noone) : Node(_x, _y, _group) construct
static drawJunctions = function(_x, _y, _mx, _my, _s) { static drawJunctions = function(_x, _y, _mx, _my, _s) {
var _dval = PANEL_GRAPH.value_dragging; var _dval = PANEL_GRAPH.value_dragging;
var hover = _dval == noone || _dval.connect_type == JUNCTION_CONNECT.input? outputs[0] : dummy_input; var hover = _dval == noone || _dval.connect_type == CONNECT_TYPE.input? outputs[0] : dummy_input;
var xx = x * _s + _x; var xx = x * _s + _x;
var yy = y * _s + _y; var yy = y * _s + _y;
isHovering = point_in_circle(_mx, _my, xx, yy, _s * 24); isHovering = point_in_circle(_mx, _my, xx, yy, _s * 24);

View file

@ -4,7 +4,7 @@ function Node_Array_Rearrange(_x, _y, _group = noone) : Node(_x, _y, _group) con
draw_pad_w = 10; draw_pad_w = 10;
setDimension(96, 48); setDimension(96, 48);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setArrayDepth(1) .setArrayDepth(1)
.setVisible(true, true); .setVisible(true, true);

View file

@ -2,7 +2,7 @@ function Node_Array_Remove(_x, _y, _group = noone) : Node(_x, _y, _group) constr
name = "Array Remove"; name = "Array Remove";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Enum_Button("Type", self, 0, [ "Index", "Value" ])) newInput(1, nodeValue_Enum_Button("Type", self, 0, [ "Index", "Value" ]))
@ -10,7 +10,7 @@ function Node_Array_Remove(_x, _y, _group = noone) : Node(_x, _y, _group) constr
newInput(2, nodeValue_Int("Index", self, 0)); newInput(2, nodeValue_Int("Index", self, 0));
newInput(3, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(3, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(4, nodeValue_Bool("Spread array", self, false )) newInput(4, nodeValue_Bool("Spread array", self, false ))

View file

@ -2,7 +2,7 @@ function Node_Array_Reverse(_x, _y, _group = noone) : Node(_x, _y, _group) const
name = "Array Reverse"; name = "Array Reverse";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
outputs[0] = nodeValue_Output("Array", self, VALUE_TYPE.any, 0); outputs[0] = nodeValue_Output("Array", self, VALUE_TYPE.any, 0);

View file

@ -2,12 +2,12 @@ function Node_Array_Set(_x, _y, _group = noone) : Node(_x, _y, _group) construct
name = "Array Set"; name = "Array Set";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Int("Index", self, 0)); newInput(1, nodeValue_Int("Index", self, 0));
newInput(2, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(2, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
outputs[0] = nodeValue_Output("Array", self, VALUE_TYPE.any, 0); outputs[0] = nodeValue_Output("Array", self, VALUE_TYPE.any, 0);

View file

@ -2,7 +2,7 @@ function Node_Array_Shift(_x, _y, _group = noone) : Node_Processor(_x, _y, _grou
name = "Array Shift"; name = "Array Shift";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setArrayDepth(99) .setArrayDepth(99)
.setVisible(true, true); .setVisible(true, true);

View file

@ -3,7 +3,7 @@ function Node_Array_Shuffle(_x, _y, _group = noone) : Node(_x, _y, _group) const
setDimension(96, 48); setDimension(96, 48);
newInput(0, nodeValue("Array in", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, [])) newInput(0, nodeValue("Array in", self, CONNECT_TYPE.input, VALUE_TYPE.any, []))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Int("Seed", self, seed_random(6))) newInput(1, nodeValue_Int("Seed", self, seed_random(6)))

View file

@ -3,7 +3,7 @@ function Node_Array_Sort(_x, _y, _group = noone) : Node(_x, _y, _group) construc
setDimension(96, 48); setDimension(96, 48);
newInput(0, nodeValue("Array in", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, [])) newInput(0, nodeValue("Array in", self, CONNECT_TYPE.input, VALUE_TYPE.any, []))
.setVisible(true, true); .setVisible(true, true);
newInput(1, nodeValue_Enum_Button("Order", self, 0, [ "Ascending", "Descending" ])) newInput(1, nodeValue_Enum_Button("Order", self, 0, [ "Ascending", "Descending" ]))

View file

@ -4,7 +4,7 @@ function Node_Array_Split(_x, _y, _group = noone) : Node(_x, _y, _group) constru
draw_padding = 4; draw_padding = 4;
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, [])) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, []))
.setVisible(true, true); .setVisible(true, true);
outputs[0] = nodeValue_Output("val 0", self, VALUE_TYPE.any, 0); outputs[0] = nodeValue_Output("val 0", self, VALUE_TYPE.any, 0);

View file

@ -2,7 +2,7 @@ function Node_Array_Zip(_x, _y, _group = noone) : Node(_x, _y, _group) construct
name = "Array Zip"; name = "Array Zip";
setDimension(96, 32 + 24); setDimension(96, 32 + 24);
newInput(0, nodeValue("Array", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0)) newInput(0, nodeValue("Array", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0))
.setVisible(true, true); .setVisible(true, true);
outputs[0] = nodeValue_Output("Output", self, VALUE_TYPE.integer, 0); outputs[0] = nodeValue_Output("Output", self, VALUE_TYPE.integer, 0);
@ -10,7 +10,7 @@ function Node_Array_Zip(_x, _y, _group = noone) : Node(_x, _y, _group) construct
static createNewInput = function() { static createNewInput = function() {
var index = array_length(inputs); var index = array_length(inputs);
newInput(index, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, -1 )) newInput(index, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.any, -1 ))
.setVisible(true, true); .setVisible(true, true);
return inputs[index]; return inputs[index];

View file

@ -1,7 +1,7 @@
function Node_ASE_layer(_x, _y, _group = noone) : Node(_x, _y, _group) constructor { function Node_ASE_layer(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
name = "ASE Layer"; name = "ASE Layer";
newInput(0, nodeValue("ASE data", self, JUNCTION_CONNECT.input, VALUE_TYPE.object, noone)) newInput(0, nodeValue("ASE data", self, CONNECT_TYPE.input, VALUE_TYPE.object, noone))
.setVisible(false, true) .setVisible(false, true)
.rejectArray(); .rejectArray();

View file

@ -6,8 +6,8 @@ function Node_Bend(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) cons
newInput(1, nodeValue_Bool("Active", self, true)); newInput(1, nodeValue_Bool("Active", self, true));
active_index = 1; active_index = 1;
inputs[2] = nodeValue_Enum_Scroll("Type", self, 0, [ new scrollItem("Arc", s_node_bend_type, 0), newInput(2, nodeValue_Enum_Scroll("Type", self, 0, [ new scrollItem("Arc", s_node_bend_type, 0),
new scrollItem("Wave", s_node_bend_type, 1) ]); new scrollItem("Wave", s_node_bend_type, 1) ]));
newInput(3, nodeValue_Enum_Button("Axis", self, 0, [ "x", "y" ])); newInput(3, nodeValue_Enum_Button("Axis", self, 0, [ "x", "y" ]));

View file

@ -10,9 +10,9 @@ function Node_Bevel(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) con
newInput(3, nodeValue_Vec2("Scale", self, [ 1, 1 ] )); newInput(3, nodeValue_Vec2("Scale", self, [ 1, 1 ] ));
inputs[4] = nodeValue_Enum_Scroll("Slope", self, 0, [ new scrollItem("Linear", s_node_curve, 2), newInput(4, nodeValue_Enum_Scroll("Slope", self, 0, [ new scrollItem("Linear", s_node_curve, 2),
new scrollItem("Smooth", s_node_curve, 4), new scrollItem("Smooth", s_node_curve, 4),
new scrollItem("Circular", s_node_curve, 5), ]); new scrollItem("Circular", s_node_curve, 5), ]));
newInput(5, nodeValue_Surface("Mask", self)); newInput(5, nodeValue_Surface("Mask", self));

View file

@ -56,11 +56,9 @@ function Node_Blend(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) con
newInput(9, nodeValue_Bool("Preserve alpha", self, false)); newInput(9, nodeValue_Bool("Preserve alpha", self, false));
inputs[10] = nodeValue_Enum_Button("Horizontal Align", self, 0, newInput(10, nodeValue_Enum_Button("Horizontal Align", self, 0, [ THEME.inspector_surface_halign, THEME.inspector_surface_halign, THEME.inspector_surface_halign]));
[ THEME.inspector_surface_halign, THEME.inspector_surface_halign, THEME.inspector_surface_halign]);
inputs[11] = nodeValue_Enum_Button("Vertical Align", self, 0, newInput(11, nodeValue_Enum_Button("Vertical Align", self, 0, [ THEME.inspector_surface_valign, THEME.inspector_surface_valign, THEME.inspector_surface_valign]));
[ THEME.inspector_surface_valign, THEME.inspector_surface_valign, THEME.inspector_surface_valign]);
newInput(12, nodeValue_Bool("Invert mask", self, false)); newInput(12, nodeValue_Bool("Invert mask", self, false));

View file

@ -21,7 +21,7 @@ function Node_Blur_Path(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
newInput(9, nodeValue_Float("Intensity", self, 1)); newInput(9, nodeValue_Float("Intensity", self, 1));
newInput(10, nodeValue("Intensity Along Path", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_11)); newInput(10, nodeValue("Intensity Along Path", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_11));
newInput(11, nodeValue_Slider_Range("Range", self, [ 0, 1 ])); newInput(11, nodeValue_Slider_Range("Range", self, [ 0, 1 ]));

View file

@ -41,14 +41,14 @@ function Node_Camera(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) co
newInput(index + 2, nodeValue_Vec2($"Position {_s}", self, [ 0, 0 ] )) newInput(index + 2, nodeValue_Vec2($"Position {_s}", self, [ 0, 0 ] ))
.setUnitRef(function(index) { return getDimension(index); }); .setUnitRef(function(index) { return getDimension(index); });
inputs[index + 3] = nodeValue_Enum_Scroll($"Oversample {_s}", self, 0, [ new scrollItem("Empty ", s_node_camera_repeat, 0), newInput(index + 3, nodeValue_Enum_Scroll($"Oversample {_s}", self, 0, [ new scrollItem("Empty ", s_node_camera_repeat, 0),
new scrollItem("Repeat ", s_node_camera_repeat, 1), new scrollItem("Repeat ", s_node_camera_repeat, 1),
new scrollItem("Repeat X", s_node_camera_repeat, 2), new scrollItem("Repeat X", s_node_camera_repeat, 2),
new scrollItem("Repeat Y", s_node_camera_repeat, 3), ]); new scrollItem("Repeat Y", s_node_camera_repeat, 3), ]));
newInput(index + 4, nodeValue_Vec2($"Parallax {_s}", self, [ 0, 0 ])); newInput(index + 4, nodeValue_Vec2($"Parallax {_s}", self, [ 0, 0 ]));
newInput(index + 5, nodeValue($"Depth {_s}", self, JUNCTION_CONNECT.input, VALUE_TYPE.float, 0)); newInput(index + 5, nodeValue($"Depth {_s}", self, CONNECT_TYPE.input, VALUE_TYPE.float, 0));
for( var i = 0; i < data_length; i++ ) array_push(input_display_list, index + i); for( var i = 0; i < data_length; i++ ) array_push(input_display_list, index + i);

View file

@ -199,7 +199,7 @@ function Node_Collection(_x, _y, _group = noone) : Node(_x, _y, _group) construc
skipDefault(); skipDefault();
draw_dummy = false; draw_dummy = false;
dummy_input = nodeValue("Add to group", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, 0); dummy_input = nodeValue("Add to group", self, CONNECT_TYPE.input, VALUE_TYPE.any, 0);
dummy_input.setDummy(function() /*=>*/ { var input = nodeBuild("Node_Group_Input", 0, 0, self); return input.inParent; }, dummy_input.setDummy(function() /*=>*/ { var input = nodeBuild("Node_Group_Input", 0, 0, self); return input.inParent; },
function(_junc) /*=>*/ { _junc.from.destroy() } function(_junc) /*=>*/ { _junc.from.destroy() }
@ -226,8 +226,8 @@ function Node_Collection(_x, _y, _group = noone) : Node(_x, _y, _group) construc
tool_node = noone; tool_node = noone;
draw_input_overlay = true; draw_input_overlay = true;
array_push(attributeEditors, ["Edit Input Display", function() /*=>*/ {return 0}, button(function() { dialogCall(o_dialog_group_input_order).setNode(self, JUNCTION_CONNECT.input); }) ]); array_push(attributeEditors, ["Edit Input Display", function() /*=>*/ {return 0}, button(function() { dialogCall(o_dialog_group_input_order).setNode(self, CONNECT_TYPE.input); }) ]);
array_push(attributeEditors, ["Edit Output Display", function() /*=>*/ {return 0}, button(function() { dialogCall(o_dialog_group_input_order).setNode(self, JUNCTION_CONNECT.output); }) ]); array_push(attributeEditors, ["Edit Output Display", function() /*=>*/ {return 0}, button(function() { dialogCall(o_dialog_group_input_order).setNode(self, CONNECT_TYPE.output); }) ]);
/////========== INSPECTOR =========== /////========== INSPECTOR ===========
@ -567,17 +567,18 @@ function Node_Collection(_x, _y, _group = noone) : Node(_x, _y, _group) construc
/////============ PREVIEW ============ /////============ PREVIEW ============
static getGraphPreviewSurface = function() { static getGraphPreviewSurface = function() {
for( var i = 0, n = array_length(nodes); i < n; i++ ) { for( var i = 0, n = array_length(nodes); i < n; i++ ) {
if(!nodes[i].active) continue; if(!nodes[i].active) continue;
if(is_instanceof(nodes[i], Node_Group_Thumbnail)) if(is_instanceof(nodes[i], Node_Group_Thumbnail))
return nodes[i].inputs[0].getValue(); return nodes[i].inputs[0].getValue();
} }
var _oj = outputs[preview_channel]; var _oj = array_safe_get(outputs, preview_channel);
if(is_undefined(_oj)) return noone; if(!is_instanceof(_oj, NodeValue)) return noone;
var _fr = _oj.from.inputs[0]; if(_oj.from == noone) return noone;
var _fr = array_safe_get(_oj.from.inputs, 0);
return _fr.value_from == noone? noone : _fr.value_from.node.getGraphPreviewSurface(); return _fr.value_from == noone? noone : _fr.value_from.node.getGraphPreviewSurface();
} }

View file

@ -33,12 +33,12 @@ function Node_Compare(_x, _y, _group = noone) : Node(_x, _y, _group) constructor
setDimension(96, 48); setDimension(96, 48);
inputs[0] = nodeValue_Enum_Scroll("Type", self, 0, [ new scrollItem("Equal", s_node_condition_type, 0), newInput(0, nodeValue_Enum_Scroll("Type", self, 0, [ new scrollItem("Equal", s_node_condition_type, 0),
new scrollItem("Not equal", s_node_condition_type, 1), new scrollItem("Not equal", s_node_condition_type, 1),
new scrollItem("Greater ", s_node_condition_type, 4), new scrollItem("Greater ", s_node_condition_type, 4),
new scrollItem("Greater or equal", s_node_condition_type, 5), new scrollItem("Greater or equal", s_node_condition_type, 5),
new scrollItem("Lesser", s_node_condition_type, 2), new scrollItem("Lesser", s_node_condition_type, 2),
new scrollItem("Lesser or equal", s_node_condition_type, 3), ]); new scrollItem("Lesser or equal", s_node_condition_type, 3), ]));
newInput(1, nodeValue_Float("a", self, 0)) newInput(1, nodeValue_Float("a", self, 0))
.setVisible(true, true); .setVisible(true, true);

View file

@ -6,21 +6,21 @@ function Node_Condition(_x, _y, _group = noone) : Node(_x, _y, _group) construct
newInput(0, nodeValue_Float("Check value", self, 0 )) newInput(0, nodeValue_Float("Check value", self, 0 ))
.setVisible(true, true); .setVisible(true, true);
inputs[1] = nodeValue_Enum_Scroll("Condition", self, 0 , [ new scrollItem("Equal", s_node_condition_type, 0), newInput(1, nodeValue_Enum_Scroll("Condition", self, 0 , [ new scrollItem("Equal", s_node_condition_type, 0),
new scrollItem("Not equal", s_node_condition_type, 1), new scrollItem("Not equal", s_node_condition_type, 1),
new scrollItem("Less ", s_node_condition_type, 2), new scrollItem("Less ", s_node_condition_type, 2),
new scrollItem("Less or equal ", s_node_condition_type, 3), new scrollItem("Less or equal ", s_node_condition_type, 3),
new scrollItem("Greater ", s_node_condition_type, 4), new scrollItem("Greater ", s_node_condition_type, 4),
new scrollItem("Greater or equal", s_node_condition_type, 5), ]) new scrollItem("Greater or equal", s_node_condition_type, 5), ]))
.rejectArray(); .rejectArray();
newInput(2, nodeValue_Float("Compare to", self, 0 )) newInput(2, nodeValue_Float("Compare to", self, 0 ))
.rejectArray(); .rejectArray();
newInput(3, nodeValue("True", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, -1 )) newInput(3, nodeValue("True", self, CONNECT_TYPE.input, VALUE_TYPE.any, -1 ))
.setVisible(true, true); .setVisible(true, true);
newInput(4, nodeValue("False", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, -1 )) newInput(4, nodeValue("False", self, CONNECT_TYPE.input, VALUE_TYPE.any, -1 ))
.setVisible(true, true); .setVisible(true, true);
newInput(5, nodeValue_Enum_Scroll("Eval mode", self, 0 , ["Boolean", "Number compare", "Text compare" ])) newInput(5, nodeValue_Enum_Scroll("Eval mode", self, 0 , ["Boolean", "Number compare", "Text compare" ]))

View file

@ -8,10 +8,10 @@ function Node_Counter(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) c
newInput(1, nodeValue_Float("Speed", self, 1)); newInput(1, nodeValue_Float("Speed", self, 1));
inputs[2] = nodeValue_Int("Mode", self, 0, @"Counting mode newInput(2, nodeValue_Int("Mode", self, 0, @"Counting mode
- Frame count: Count value up/down per frame. - Frame count: Count value up/down per frame.
- Animation progress: Count from 0 (first frame) to 1 (last frame). ") - Animation progress: Count from 0 (first frame) to 1 (last frame). ")
.setDisplay(VALUE_DISPLAY.enum_scroll, ["Frame count", "Animation progress"]) .setDisplay(VALUE_DISPLAY.enum_scroll, ["Frame count", "Animation progress"]))
.rejectArray(); .rejectArray();
outputs[0] = nodeValue_Output("Value", self, VALUE_TYPE.float, 0); outputs[0] = nodeValue_Output("Value", self, VALUE_TYPE.float, 0);

View file

@ -18,7 +18,7 @@ function Node_CSV_File_Write(_x, _y, _group = noone) : Node(_x, _y, _group) cons
.setDisplay(VALUE_DISPLAY.path_save, { filter: "csv file|*.csv" }) .setDisplay(VALUE_DISPLAY.path_save, { filter: "csv file|*.csv" })
.rejectArray(); .rejectArray();
newInput(1, nodeValue("Content", self, JUNCTION_CONNECT.input, VALUE_TYPE.any, "")) newInput(1, nodeValue("Content", self, CONNECT_TYPE.input, VALUE_TYPE.any, ""))
.setVisible(true, true); .setVisible(true, true);
static writeFile = function() { #region static writeFile = function() { #region

View file

@ -3,13 +3,13 @@ function Node_Curve(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) con
newInput(0, nodeValue_Surface("Surface in", self)); newInput(0, nodeValue_Surface("Surface in", self));
newInput(1, nodeValue("Brightness", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(1, nodeValue("Brightness", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(2, nodeValue("Red", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(2, nodeValue("Red", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(3, nodeValue("Green", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(3, nodeValue("Green", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(4, nodeValue("Blue", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(4, nodeValue("Blue", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(5, nodeValue_Surface("Mask", self)); newInput(5, nodeValue_Surface("Mask", self));
@ -23,7 +23,7 @@ function Node_Curve(_x, _y, _group = noone) : Node_Processor(_x, _y, _group) con
__init_mask_modifier(5); // inputs 9, 10 __init_mask_modifier(5); // inputs 9, 10
newInput(11, nodeValue("Alpha", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(11, nodeValue("Alpha", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
outputs[0] = nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone); outputs[0] = nodeValue_Output("Surface out", self, VALUE_TYPE.surface, noone);

View file

@ -3,11 +3,11 @@ function Node_Curve_HSV(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
newInput(0, nodeValue_Surface("Surface in", self)); newInput(0, nodeValue_Surface("Surface in", self));
newInput(1, nodeValue("Hue", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(1, nodeValue("Hue", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(2, nodeValue("Saturation", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(2, nodeValue("Saturation", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(3, nodeValue("Value", self, JUNCTION_CONNECT.input, VALUE_TYPE.curve, CURVE_DEF_01)); newInput(3, nodeValue("Value", self, CONNECT_TYPE.input, VALUE_TYPE.curve, CURVE_DEF_01));
newInput(4, nodeValue_Surface("Mask", self)); newInput(4, nodeValue_Surface("Mask", self));

View file

@ -152,13 +152,13 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
inspector_display_list = -1; inspector_display_list = -1;
is_dynamic_output = false; is_dynamic_output = false;
inspectInput1 = nodeValue("Toggle execution", self, JUNCTION_CONNECT.input, VALUE_TYPE.action, false).setVisible(true, true); inspectInput1 = nodeValue("Toggle execution", self, CONNECT_TYPE.input, VALUE_TYPE.action, false).setVisible(true, true);
inspectInput1.index = -1; inspectInput1.index = -1;
inspectInput2 = nodeValue("Toggle execution", self, JUNCTION_CONNECT.input, VALUE_TYPE.action, false).setVisible(true, true); inspectInput2 = nodeValue("Toggle execution", self, CONNECT_TYPE.input, VALUE_TYPE.action, false).setVisible(true, true);
inspectInput2.index = -1; inspectInput2.index = -1;
updatedInTrigger = nodeValue("Update", self, JUNCTION_CONNECT.input, VALUE_TYPE.trigger, false).setVisible(true, true); updatedInTrigger = nodeValue("Update", self, CONNECT_TYPE.input, VALUE_TYPE.trigger, false).setVisible(true, true);
updatedInTrigger.index = -1; updatedInTrigger.index = -1;
updatedInTrigger.tags = VALUE_TAG.updateInTrigger; updatedInTrigger.tags = VALUE_TAG.updateInTrigger;
@ -391,7 +391,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
dynamic_input_cond = _dynamic_input_cond; dynamic_input_cond = _dynamic_input_cond;
if(auto_input) { if(auto_input) {
dummy_input = nodeValue("Add value", self, JUNCTION_CONNECT.input, dummy_type, 0) dummy_input = nodeValue("Add value", self, CONNECT_TYPE.input, dummy_type, 0)
.setDummy(function() /*=>*/ {return createNewInput()}) .setDummy(function() /*=>*/ {return createNewInput()})
.setVisible(false, true); .setVisible(false, true);
} }
@ -1544,8 +1544,8 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
show_output_name &= point_in_rectangle(_mx, _my, xx + (w - 12) * _s, _y0, xx + (w + 12) * _s, _y1); show_output_name &= point_in_rectangle(_mx, _my, xx + (w - 12) * _s, _y0, xx + (w + 12) * _s, _y1);
if(PANEL_GRAPH.value_dragging && PANEL_GRAPH.node_hovering == self) { if(PANEL_GRAPH.value_dragging && PANEL_GRAPH.node_hovering == self) {
if(PANEL_GRAPH.value_dragging.connect_type == JUNCTION_CONNECT.input) show_output_name = true; if(PANEL_GRAPH.value_dragging.connect_type == CONNECT_TYPE.input) show_output_name = true;
if(PANEL_GRAPH.value_dragging.connect_type == JUNCTION_CONNECT.output) show_input_name = true; if(PANEL_GRAPH.value_dragging.connect_type == CONNECT_TYPE.output) show_input_name = true;
} }
if(show_input_name) { if(show_input_name) {
@ -1674,15 +1674,14 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
return hovering; return hovering;
} }
static getGraphPreviewSurface = function() { static getGraphPreviewSurface = function() {
var _node = array_safe_get(outputs, preview_channel); var _node = array_safe_get(outputs, preview_channel);
if(!is_instanceof(_node, NodeValue)) return noone; if(!is_instanceof(_node, NodeValue)) return noone;
switch(_node.type) { switch(_node.type) {
case VALUE_TYPE.surface : case VALUE_TYPE.surface :
case VALUE_TYPE.dynaSurface : case VALUE_TYPE.dynaSurface :
var val = _node.showValue(); return _node.showValue();
return val;
} }
return noone; return noone;

View file

@ -22,8 +22,8 @@ function Node_Displace(_x, _y, _group = noone) : Node_Processor(_x, _y, _group)
- Angle: Use red as angle, green as distance. - Angle: Use red as angle, green as distance.
- Gradient: Displace down the brightness value defined by the Displace map."); - Gradient: Displace down the brightness value defined by the Displace map.");
inputs[6] = nodeValue_Bool("Iterate", self, false, @"If not set, then strength value is multiplied directly to the displacement. newInput(6, nodeValue_Bool("Iterate", self, false, @"If not set, then strength value is multiplied directly to the displacement.
If set, then strength value control how many times the effect applies on itself."); If set, then strength value control how many times the effect applies on itself."));
newInput(7, nodeValue_Enum_Scroll("Oversample mode", self, 0, [ "Empty", "Clamp", "Repeat" ])) newInput(7, nodeValue_Enum_Scroll("Oversample mode", self, 0, [ "Empty", "Clamp", "Repeat" ]))
.setTooltip("How to deal with pixel outside the surface.\n - Empty: Use empty pixel\n - Clamp: Repeat edge pixel\n - Repeat: Repeat texture."); .setTooltip("How to deal with pixel outside the surface.\n - Empty: Use empty pixel\n - Clamp: Repeat edge pixel\n - Repeat: Repeat texture.");

View file

@ -2,7 +2,7 @@ function Node_DLL(_x, _y, _group = noone) : Node(_x, _y, _group) constructor {
name = "DLL"; name = "DLL";
setDimension(96, 32 + 24 * 1); setDimension(96, 32 + 24 * 1);
newInput(0, nodeValue_Text("DLL File", self, "")) newInput(0, nodeValue_Path("DLL File", self, ""))
.setDisplay(VALUE_DISPLAY.path_load, { filter: "Dynamic-link library (.dll)|*.dll" }) .setDisplay(VALUE_DISPLAY.path_load, { filter: "Dynamic-link library (.dll)|*.dll" })
.setVisible(true, false); .setVisible(true, false);

View file

@ -5,21 +5,21 @@ function Node_DynaSurf_Out(_x, _y, _group = noone) : Node_PCX(_x, _y, _group) co
manual_deletable = false; manual_deletable = false;
destroy_when_upgroup = true; destroy_when_upgroup = true;
newInput(0, nodeValue("Surface", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Surface", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(1, nodeValue("x", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(1, nodeValue("x", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(2, nodeValue("y", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(2, nodeValue("y", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(3, nodeValue("sx", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(3, nodeValue("sx", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(4, nodeValue("sy", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(4, nodeValue("sy", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(5, nodeValue("angle", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(5, nodeValue("angle", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(6, nodeValue("color", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(6, nodeValue("color", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
newInput(7, nodeValue("alpha", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(7, nodeValue("alpha", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone) outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone)
.setVisible(false); .setVisible(false);

View file

@ -5,7 +5,7 @@ function Node_DynaSurf_Out_Height(_x, _y, _group = noone) : Node_PCX(_x, _y, _gr
manual_deletable = false; manual_deletable = false;
destroy_when_upgroup = true; destroy_when_upgroup = true;
newInput(0, nodeValue("Height", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Height", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone) outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone)
.setVisible(false); .setVisible(false);

View file

@ -5,7 +5,7 @@ function Node_DynaSurf_Out_Width(_x, _y, _group = noone) : Node_PCX(_x, _y, _gro
manual_deletable = false; manual_deletable = false;
destroy_when_upgroup = true; destroy_when_upgroup = true;
newInput(0, nodeValue("Width", self, JUNCTION_CONNECT.input, VALUE_TYPE.PCXnode, noone)); newInput(0, nodeValue("Width", self, CONNECT_TYPE.input, VALUE_TYPE.PCXnode, noone));
outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone) outputs[0] = nodeValue_Output("PCX", self, VALUE_TYPE.PCXnode, noone)
.setVisible(false); .setVisible(false);

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