2023-03-07 14:29:47 +01:00
|
|
|
function __Node_Base(x, y) constructor {
|
|
|
|
self.x = x;
|
|
|
|
self.y = y;
|
|
|
|
|
2023-11-17 12:33:25 +01:00
|
|
|
node_id = 0;
|
|
|
|
|
2023-05-03 21:42:17 +02:00
|
|
|
display_name = "";
|
2023-03-07 14:29:47 +01:00
|
|
|
inputs = ds_list_create();
|
|
|
|
outputs = ds_list_create();
|
2023-10-15 15:04:42 +02:00
|
|
|
input_value_map = {};
|
2023-03-07 14:29:47 +01:00
|
|
|
|
2023-10-12 12:25:38 +02:00
|
|
|
active_index = -1;
|
|
|
|
preview_index = 0;
|
|
|
|
anim_priority = -999;
|
2023-03-07 14:29:47 +01:00
|
|
|
|
2023-11-17 12:33:25 +01:00
|
|
|
#region --- attributes ----
|
|
|
|
attributes = {
|
|
|
|
update_graph: true,
|
|
|
|
show_update_trigger: false,
|
|
|
|
color: -1,
|
|
|
|
};
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
#region ---- timeline ----
|
|
|
|
timeline_item = new timelineItemNode(self);
|
|
|
|
anim_priority = 0;
|
|
|
|
is_anim_timeline = false;
|
|
|
|
|
|
|
|
static refreshTimeline = function() { #region
|
|
|
|
var _pre_anim = is_anim_timeline;
|
|
|
|
var _cur_anim = false;
|
|
|
|
|
|
|
|
for( var i = 0, n = ds_list_size(inputs); i < n; i++ ) {
|
|
|
|
var _inp = inputs[| i];
|
2024-05-07 06:53:51 +02:00
|
|
|
if(_inp.is_anim && _inp.value_from == noone) {
|
2023-11-17 12:33:25 +01:00
|
|
|
_cur_anim = true;
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
if(_pre_anim && !_cur_anim)
|
|
|
|
timeline_item.removeSelf();
|
|
|
|
else if(!_pre_anim && _cur_anim)
|
|
|
|
PROJECT.timelines.addItem(timeline_item);
|
|
|
|
|
|
|
|
is_anim_timeline = _cur_anim;
|
|
|
|
} #endregion
|
|
|
|
|
|
|
|
#endregion
|
|
|
|
|
2023-03-07 14:29:47 +01:00
|
|
|
static step = function() {}
|
2023-10-09 16:07:33 +02:00
|
|
|
static update = function(frame = CURRENT_FRAME) {}
|
2023-03-07 14:29:47 +01:00
|
|
|
|
|
|
|
static valueUpdate = function(index) {}
|
|
|
|
static triggerRender = function() {}
|
|
|
|
|
|
|
|
static onValidate = function() {}
|
|
|
|
static onDestroy = function() {}
|
|
|
|
|
|
|
|
static clearCache = function() {}
|
|
|
|
static clearCacheForward = function() {}
|
|
|
|
|
|
|
|
static serialize = function() {}
|
|
|
|
static deserialize = function(_map) {}
|
|
|
|
}
|