This commit is contained in:
Tanasart 2024-12-09 14:27:09 +07:00
parent cf103c7252
commit ef8a16dfc0
7 changed files with 47 additions and 38 deletions

View file

@ -466,6 +466,7 @@
{"name":"canvas_tool_extrude","order":1,"path":"scripts/canvas_tool_extrude/canvas_tool_extrude.yy",},
{"name":"canvas_tool_fill","order":4,"path":"scripts/canvas_tool_fill/canvas_tool_fill.yy",},
{"name":"canvas_tool_inset","order":2,"path":"scripts/canvas_tool_inset/canvas_tool_inset.yy",},
{"name":"android","order":1,"path":"options/android/options_android.yy",},
{"name":"canvas_tool_node","order":12,"path":"scripts/canvas_tool_node/canvas_tool_node.yy",},
{"name":"canvas_tool_outline","order":3,"path":"scripts/canvas_tool_outline/canvas_tool_outline.yy",},
{"name":"canvas_tool_resize","order":11,"path":"scripts/canvas_tool_resize/canvas_tool_resize.yy",},
@ -1585,6 +1586,7 @@
{"name":"sh_mk_subpixel_linear","order":1,"path":"shaders/sh_mk_subpixel_linear/sh_mk_subpixel_linear.yy",},
{"name":"sh_mk_subpixel_square_non","order":6,"path":"shaders/sh_mk_subpixel_square_non/sh_mk_subpixel_square_non.yy",},
{"name":"sh_mk_subpixel_square","order":5,"path":"shaders/sh_mk_subpixel_square/sh_mk_subpixel_square.yy",},
{"name":"tvos","order":1,"path":"options/tvos/options_tvos.yy",},
{"name":"sh_mk_tile18_edge_l","order":1,"path":"shaders/sh_mk_tile18_edge_l/sh_mk_tile18_edge_l.yy",},
{"name":"sh_mk_tile18_edge_r","order":2,"path":"shaders/sh_mk_tile18_edge_r/sh_mk_tile18_edge_r.yy",},
{"name":"sh_mk_tile18_edge_t","order":3,"path":"shaders/sh_mk_tile18_edge_t/sh_mk_tile18_edge_t.yy",},
@ -1599,6 +1601,7 @@
{"name":"sh_node_widget_scalar_line","order":3,"path":"shaders/sh_node_widget_scalar_line/sh_node_widget_scalar_line.yy",},
{"name":"sh_noise_bubble","order":2,"path":"shaders/sh_noise_bubble/sh_noise_bubble.yy",},
{"name":"sh_noise_cristal","order":18,"path":"shaders/sh_noise_cristal/sh_noise_cristal.yy",},
{"name":"main","order":1,"path":"options/main/options_main.yy",},
{"name":"sh_noise_fbm","order":3,"path":"shaders/sh_noise_fbm/sh_noise_fbm.yy",},
{"name":"sh_noise_flow","order":4,"path":"shaders/sh_noise_flow/sh_noise_flow.yy",},
{"name":"sh_noise_fold","order":5,"path":"shaders/sh_noise_fold/sh_noise_fold.yy",},
@ -1635,6 +1638,7 @@
{"name":"sh_pb_to_mask","order":7,"path":"shaders/sh_pb_to_mask/sh_pb_to_mask.yy",},
{"name":"sh_perlin_extra","order":13,"path":"shaders/sh_perlin_extra/sh_perlin_extra.yy",},
{"name":"sh_perlin_smear","order":14,"path":"shaders/sh_perlin_smear/sh_perlin_smear.yy",},
{"name":"html5","order":1,"path":"options/html5/options_html5.yy",},
{"name":"sh_perlin_tiled","order":15,"path":"shaders/sh_perlin_tiled/sh_perlin_tiled.yy",},
{"name":"sh_perlin","order":12,"path":"shaders/sh_perlin/sh_perlin.yy",},
{"name":"sh_pixel_cloud","order":4,"path":"shaders/sh_pixel_cloud/sh_pixel_cloud.yy",},
@ -2112,6 +2116,7 @@
{"name":"s_node_blur_simple","order":4,"path":"sprites/s_node_blur_simple/s_node_blur_simple.yy",},
{"name":"s_node_blur_slope","order":5,"path":"sprites/s_node_blur_slope/s_node_blur_slope.yy",},
{"name":"s_node_blur","order":1,"path":"sprites/s_node_blur/s_node_blur.yy",},
{"name":"ios","order":1,"path":"options/ios/options_ios.yy",},
{"name":"s_node_bokeh","order":6,"path":"sprites/s_node_bokeh/s_node_bokeh.yy",},
{"name":"s_node_boolean","order":3,"path":"sprites/s_node_boolean/s_node_boolean.yy",},
{"name":"s_node_border","order":8,"path":"sprites/s_node_border/s_node_border.yy",},
@ -2253,6 +2258,7 @@
{"name":"s_node_image_transform_3d","order":25,"path":"sprites/s_node_image_transform_3d/s_node_image_transform_3d.yy",},
{"name":"s_node_image","order":1,"path":"sprites/s_node_image/s_node_image.yy",},
{"name":"s_node_input","order":6,"path":"sprites/s_node_input/s_node_input.yy",},
{"name":"linux","order":1,"path":"options/linux/options_linux.yy",},
{"name":"s_node_interlace","order":68,"path":"sprites/s_node_interlace/s_node_interlace.yy",},
{"name":"s_node_interpret_number","order":30,"path":"sprites/s_node_interpret_number/s_node_interpret_number.yy",},
{"name":"s_node_invert","order":30,"path":"sprites/s_node_invert/s_node_invert.yy",},
@ -2722,6 +2728,7 @@
{"name":"s_unit_ref","order":207,"path":"sprites/s_unit_ref/s_unit_ref.yy",},
{"name":"s_value_range","order":229,"path":"sprites/s_value_range/s_value_range.yy",},
{"name":"s_value_use_surface","order":208,"path":"sprites/s_value_use_surface/s_value_use_surface.yy",},
{"name":"operagx","order":1,"path":"options/operagx/options_operagx.yy",},
{"name":"s_vct","order":209,"path":"sprites/s_vct/s_vct.yy",},
{"name":"s_vfx","order":210,"path":"sprites/s_vfx/s_vfx.yy",},
{"name":"s_view_group","order":211,"path":"sprites/s_view_group/s_view_group.yy",},
@ -2740,6 +2747,7 @@
{"name":"s_window_maximize","order":221,"path":"sprites/s_window_maximize/s_window_maximize.yy",},
{"name":"s_window_minimize","order":222,"path":"sprites/s_window_minimize/s_window_minimize.yy",},
{"name":"s_workshop_badge_version","order":3,"path":"sprites/s_workshop_badge_version/s_workshop_badge_version.yy",},
{"name":"mac","order":1,"path":"options/mac/options_mac.yy",},
{"name":"s_workshop_badge","order":1,"path":"sprites/s_workshop_badge/s_workshop_badge.yy",},
{"name":"s_workshop_download","order":223,"path":"sprites/s_workshop_download/s_workshop_download.yy",},
{"name":"s_workshop_update","order":224,"path":"sprites/s_workshop_update/s_workshop_update.yy",},

View file

@ -86,7 +86,8 @@ function os_type_sting() {
function exception_print(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()}] ==========";
str += $"\n\n{e.longMessage}";
str += "\n\n========== Stack trace ==========\n\n";
for( var i = 0, n = array_length(e.stacktrace); i < n; i++ )

View file

@ -46,8 +46,8 @@
LATEST_VERSION = 1_18_00_0;
VERSION = 1_18_05_0;
SAVE_VERSION = 1_18_05_0;
VERSION_STRING = MAC? "1.18.003m" : "1.18.5.013";
BUILD_NUMBER = 1_18_04_1;
VERSION_STRING = MAC? "1.18.003m" : "1.18.5";
BUILD_NUMBER = 1_18_05_0;
HOTKEYS = ds_map_create();
HOTKEY_CONTEXT = ds_list_create();

View file

@ -358,7 +358,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
load_group = noone;
#endregion
/////============= NAME =============
//// NAME
static initTooltip = function() {
if(IS_CMD) return;
@ -399,7 +399,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static getFullName = function() { return renamed? $"[{name}] " + display_name : name; }
static getDisplayName = function() { return renamed? display_name : name; }
/////========== DYNAMIC IO ==========
/////DYNAMIC IO
dummy_input = noone;
auto_input = false;
@ -560,7 +560,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
triggerRender();
}
/////========== INSPECTOR ===========
/////INSPECTOR
static onInspector1Update = noone;
static inspector1Update = function() { INLINE onInspector1Update(); }
@ -570,7 +570,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static inspector2Update = function() { INLINE onInspector2Update(); }
static hasInspector2Update = function() { INLINE return onInspector2Update != noone; }
/////============= STEP =============
/////STEP
static stepBegin = function() {
@ -658,7 +658,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static focusStep = function() {}
static inspectorStep = function() {}
/////========== JUNCTIONS ==========
/////JUNCTIONS
static newInput = function(index, junction) { inputs[index] = junction; return junction; }
static newOutput = function(index, junction) { outputs[index] = junction; return junction; }
@ -924,7 +924,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
}
}
/////============ INPUTS ============
/////INPUTS
set_default = true;
@ -987,7 +987,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
});
}
/////============ UPDATE ============
/////UPDATE
static forceUpdate = function() {
input_hash = "";
@ -1091,7 +1091,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static onValueUpdate = function(index = 0) {}
static onValueFromUpdate = function(index) {}
/////============ RENDER ============
/////RENDER
static isAnimated = function(frame = CURRENT_FRAME) {
if(update_on_frame) return true;
@ -1349,7 +1349,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
return nodes;
}
/////============= DRAW =============
/////DRAW
static setShowParameter = function(showParam) {
show_parameter = showParam;
@ -2182,7 +2182,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static drawAnimationTimeline = function(_w, _h, _s) {}
/////============ PREVIEW ============
/////PREVIEW
static getPreviewValues = function() {
if(preview_channel >= array_length(outputs)) return noone;
@ -2207,7 +2207,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
return BBOX().fromWH(preview_x, preview_y, surface_get_width_safe(_surf), surface_get_height_safe(_surf));
}
/////============= CACHE =============
/////CACHE
static cacheCheck = function() {
INLINE
@ -2334,7 +2334,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
}
}
/////============= TOOLS =============
/////TOOLS
static isUsingTool = function(index = undefined, subtool = noone) {
if(tools == -1)
@ -2379,7 +2379,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static drawTools = noone;
/////=========== SERIALIZE ===========
/////SERIALIZE
static serialize = function(scale = false, preset = false) {
if(!active) return;
@ -2466,7 +2466,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static doSerialize = function(_map) {}
static processSerialize = function(_map) {}
/////========== DESERIALIZE ==========
/////DESERIALIZE
static deserialize = function(_map, scale = false, preset = false) {
@ -2689,7 +2689,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static postLoad = function() {}
/////=========== CLEAN UP ===========
/////CLEAN UP
static cleanUp = function() {
for( var i = 0; i < array_length(inputs); i++ ) { inputs[i].cleanUp(); delete inputs[i]; }
@ -2703,7 +2703,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static onCleanUp = function() {}
/////============ ACTION ============
/////ACTION
static setDimension = function(_w = 128, _h = 128, _apply = true) {
INLINE
@ -2848,7 +2848,7 @@ function Node(_x, _y, _group = noone) : __Node_Base(_x, _y) constructor {
static onClone = function(_NewNode, target = PANEL_GRAPH.getCurrentContext()) {}
/////============= MISC =============
/////MISC
static isInLoop = function() {
return array_exists(global.loop_nodes, instanceof(group));

View file

@ -50,7 +50,7 @@ function Node_Smoke_Domain(_x, _y, _group = noone) : Node_Smoke(_x, _y, _group)
["Domain", false], 0, 1, 11, 12,
["Properties", false], 8, 6, 7,
["Dissipation", false], 3, 5,
["Advance Setings", true], 2, 4, 9, 10,
["Advance Settings", true], 2, 4, 9, 10,
];
domain = new smokeSim_Domain(1, 1);

View file

@ -240,7 +240,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
con_tag = 0;
#endregion
/////============= META =============
/////META
static setDummy = function(get_node, _dummy_undo = -1, _dummy_redo = -1) {
is_dummy = true;
@ -281,7 +281,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
return self;
}
/////============= NAME =============
/////NAME
static getName = function() {
if(name_custom) return name;
@ -294,7 +294,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
return self;
}
/////============= VALUE ============
/////VALUE
static setType = function(_type) {
if(type == _type) return false;
@ -445,7 +445,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
}
/////========== ANIMATION ==========
/////ANIMATION
static setAnimable = function(_anim) {
animable = _anim;
@ -501,7 +501,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
if(NOT_LOAD && node.group) node.group.checkPureFunction();
}
/////============ DISPLAY ===========
/////DISPLAY
static setVisibleManual = function(v) {
visible_manual = v;
@ -1009,7 +1009,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
resetDisplay();
/////============ RENDER ============
/////RENDER
static isRendered = function() {
if(type == VALUE_TYPE.node) return true;
@ -1065,7 +1065,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
return is_anim;
}
/////============= CACHE ============
/////CACHE
static uncache = function() {
use_cache = false;
@ -1074,7 +1074,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
static resetCache = function() { cache_value[0] = false; }
/////============== GET =============
/////GET
static valueProcess = function(value, nodeFrom = undefined, applyUnit = true, arrIndex = 0) {
var typeFrom = nodeFrom == undefined? VALUE_TYPE.any : nodeFrom.type;
@ -1426,7 +1426,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
arrayLength = __arrayLength;
/////============== SET =============
/////SET
static onValidate = function() {
if(!validateValue) return;
@ -1502,7 +1502,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
}
}
static setValueInspector = function(_val = 0, index = noone, time = CURRENT_FRAME) { // This should be in panel_graph not here.
static setValueInspector = function(_val = 0, index = noone, time = CURRENT_FRAME) { // This should be in panel_inspector not here.
INLINE
var res = false;
@ -1618,7 +1618,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
setValue(_dat);
}
/////=========== CONNECT ===========
/////CONNECT
static rejectConnect = function() {
auto_connect = false;
@ -1809,7 +1809,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
return _junc_to;
}
/////============= DRAW =============
/////DRAW
static setColor = function(_color) {
color = color_real(_color);
@ -2108,7 +2108,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
__draw_sprite_ext(custom_icon, draw_junction_index, _mx, _my, ss / 2, ss / 2, 0, c_white, 1);
}
/////========== EXPRESSION ==========
/////EXPRESSION
static setUseExpression = function(useExp) {
INLINE
@ -2129,7 +2129,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
node.triggerRender();
}
/////=========== SERIALIZE ===========
/////SERIALIZE
static serialize = function(scale = false, preset = false) {
var _map = {};
@ -2320,7 +2320,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
return false;
}
/////============= MISC =============
/////MISC
static extractNode = function(_type = extract_node) {
if(_type == "") return noone;
@ -2399,7 +2399,7 @@ function NodeValue(_name, _node, _connect, _type, _value, _tooltip = "") constru
}
/////========== FUNCTIONS ==========
/////FUNCTIONS
function checkJuncConnection(from, to, params) {
if(from == noone || to == noone) return noone;

View file

@ -741,7 +741,7 @@ function Panel_Menu() : PanelContent() constructor {
}
var dia = hori? menuCall("title_recent_menu", arr, x + tcx, y + h, fa_center) : menuCall("title_recent_menu", arr, x + w, y + tby0);
dia.tooltips = tip;
if(dia) dia.tooltips = tip;
}