mirror of
https://github.com/godotengine/godot.git
synced 2025-10-20 16:33:30 +00:00
Reworked signal connection system, added support for Callable and Signal objects and made them default.
This commit is contained in:
parent
1a4be2cd8f
commit
69c95f4b4c
275 changed files with 3831 additions and 2948 deletions
|
@ -285,7 +285,7 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
int ac = node->get_argument_count();
|
||||
|
||||
|
@ -294,7 +294,7 @@ public:
|
|||
Variant::Type expected = node->get_argument_type(i);
|
||||
if (expected != Variant::NIL) {
|
||||
if (!Variant::can_convert_strict(p_inputs[i]->get_type(), expected)) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_ARGUMENT;
|
||||
r_error.expected = expected;
|
||||
r_error.argument = i;
|
||||
return 0;
|
||||
|
@ -762,7 +762,7 @@ public:
|
|||
int input_count = 0;
|
||||
virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
if (input_count > 0) {
|
||||
Array arr;
|
||||
|
@ -1031,7 +1031,7 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
bool valid;
|
||||
if (unary) {
|
||||
|
@ -1043,7 +1043,7 @@ public:
|
|||
|
||||
if (!valid) {
|
||||
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
if (p_outputs[0]->get_type() == Variant::STRING) {
|
||||
r_error_str = *p_outputs[0];
|
||||
} else {
|
||||
|
@ -1165,7 +1165,7 @@ class VisualScriptNodeInstanceSelect : public VisualScriptNodeInstance {
|
|||
public:
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
bool cond = *p_inputs[0];
|
||||
if (cond)
|
||||
|
@ -1285,10 +1285,10 @@ public:
|
|||
VisualScriptInstance *instance;
|
||||
StringName variable;
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
if (!instance->get_variable(variable, p_outputs[0])) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = RTR("VariableGet not found in script: ") + "'" + String(variable) + "'";
|
||||
return 0;
|
||||
}
|
||||
|
@ -1407,11 +1407,11 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
if (!instance->set_variable(variable, *p_inputs[0])) {
|
||||
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = RTR("VariableSet not found in script: ") + "'" + String(variable) + "'";
|
||||
}
|
||||
|
||||
|
@ -1482,7 +1482,7 @@ void VisualScriptConstant::set_constant_type(Variant::Type p_type) {
|
|||
return;
|
||||
|
||||
type = p_type;
|
||||
Variant::CallError ce;
|
||||
Callable::CallError ce;
|
||||
value = Variant::construct(type, NULL, 0, ce);
|
||||
ports_changed_notify();
|
||||
_change_notify();
|
||||
|
@ -1537,7 +1537,7 @@ public:
|
|||
Variant constant;
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = constant;
|
||||
return 0;
|
||||
|
@ -1642,7 +1642,7 @@ public:
|
|||
Ref<Resource> preload;
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = preload;
|
||||
return 0;
|
||||
|
@ -1710,13 +1710,13 @@ class VisualScriptNodeInstanceIndexGet : public VisualScriptNodeInstance {
|
|||
public:
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
bool valid;
|
||||
*p_outputs[0] = p_inputs[0]->get(*p_inputs[1], &valid);
|
||||
|
||||
if (!valid) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = "Invalid get: " + p_inputs[0]->get_construct_string();
|
||||
}
|
||||
return 0;
|
||||
|
@ -1785,14 +1785,14 @@ class VisualScriptNodeInstanceIndexSet : public VisualScriptNodeInstance {
|
|||
public:
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
bool valid;
|
||||
*p_outputs[0] = *p_inputs[0];
|
||||
p_outputs[0]->set(*p_inputs[1], *p_inputs[2], &valid);
|
||||
|
||||
if (!valid) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = "Invalid set: " + p_inputs[1]->get_construct_string();
|
||||
}
|
||||
return 0;
|
||||
|
@ -1866,7 +1866,7 @@ public:
|
|||
int index;
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = GlobalConstants::get_global_constant_value(index);
|
||||
return 0;
|
||||
|
@ -1991,11 +1991,11 @@ public:
|
|||
bool valid;
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
if (!valid) {
|
||||
r_error_str = "Invalid constant name, pick a valid class constant.";
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
}
|
||||
|
||||
*p_outputs[0] = value;
|
||||
|
@ -2140,11 +2140,11 @@ public:
|
|||
bool valid;
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
if (!valid) {
|
||||
r_error_str = "Invalid constant name, pick a valid basic type constant.";
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
}
|
||||
|
||||
*p_outputs[0] = value;
|
||||
|
@ -2283,7 +2283,7 @@ public:
|
|||
float value;
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = value;
|
||||
return 0;
|
||||
|
@ -2389,7 +2389,7 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = singleton;
|
||||
return 0;
|
||||
|
@ -2512,18 +2512,18 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
Node *node = Object::cast_to<Node>(instance->get_owner_ptr());
|
||||
if (!node) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = "Base object is not a Node!";
|
||||
return 0;
|
||||
}
|
||||
|
||||
Node *another = node->get_node(path);
|
||||
if (!another) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = "Path does not lead Node!";
|
||||
return 0;
|
||||
}
|
||||
|
@ -2696,18 +2696,18 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
Node *node = Object::cast_to<Node>(instance->get_owner_ptr());
|
||||
if (!node) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = "Base object is not a Node!";
|
||||
return 0;
|
||||
}
|
||||
|
||||
SceneTree *tree = node->get_tree();
|
||||
if (!tree) {
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error_str = "Attempt to get SceneTree while node is not in the active tree.";
|
||||
return 0;
|
||||
}
|
||||
|
@ -2803,7 +2803,7 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = path;
|
||||
return 0;
|
||||
|
@ -2885,7 +2885,7 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = instance->get_owner_ptr();
|
||||
return 0;
|
||||
|
@ -3022,13 +3022,13 @@ public:
|
|||
int work_mem_size;
|
||||
|
||||
virtual int get_working_memory_size() const { return work_mem_size; }
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
if (node->get_script_instance()) {
|
||||
#ifdef DEBUG_ENABLED
|
||||
if (!node->get_script_instance()->has_method(VisualScriptLanguage::singleton->_step)) {
|
||||
r_error_str = RTR("Custom node has no _step() method, can't process graph.");
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
@ -3055,13 +3055,13 @@ public:
|
|||
Variant ret = node->get_script_instance()->call(VisualScriptLanguage::singleton->_step, in_values, out_values, p_start_mode, work_mem);
|
||||
if (ret.get_type() == Variant::STRING) {
|
||||
r_error_str = ret;
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
return 0;
|
||||
} else if (ret.is_num()) {
|
||||
ret_out = ret;
|
||||
} else {
|
||||
r_error_str = RTR("Invalid return value from _step(), must be integer (seq out), or string (error).");
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -3144,7 +3144,7 @@ void VisualScriptCustomNode::_bind_methods() {
|
|||
}
|
||||
|
||||
VisualScriptCustomNode::VisualScriptCustomNode() {
|
||||
connect("script_changed", this, "_script_changed");
|
||||
connect_compat("script_changed", this, "_script_changed");
|
||||
}
|
||||
|
||||
//////////////////////////////////////////
|
||||
|
@ -3237,11 +3237,11 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
if (!valid) {
|
||||
r_error_str = "Node requires a script with a _subcall(<args>) method to work.";
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
return 0;
|
||||
}
|
||||
*p_outputs[0] = subcall->call(VisualScriptLanguage::singleton->_subcall, p_inputs, input_args, r_error);
|
||||
|
@ -3368,7 +3368,7 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
@ -3483,11 +3483,11 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
Variant::CallError ce;
|
||||
Callable::CallError ce;
|
||||
*p_outputs[0] = Variant::construct(type, p_inputs, argcount, ce);
|
||||
if (ce.error != Variant::CallError::CALL_OK) {
|
||||
if (ce.error != Callable::CallError::CALL_OK) {
|
||||
r_error_str = "Invalid arguments for constructor";
|
||||
}
|
||||
|
||||
|
@ -3612,7 +3612,7 @@ public:
|
|||
StringName name;
|
||||
|
||||
virtual int get_working_memory_size() const { return 1; }
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_outputs[0] = *p_working_mem;
|
||||
return 0;
|
||||
|
@ -3733,7 +3733,7 @@ public:
|
|||
StringName name;
|
||||
|
||||
virtual int get_working_memory_size() const { return 1; }
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
*p_working_mem = *p_inputs[0];
|
||||
*p_outputs[0] = *p_working_mem;
|
||||
|
@ -3868,7 +3868,7 @@ public:
|
|||
StringName action;
|
||||
VisualScriptInputAction::Mode mode;
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
switch (mode) {
|
||||
case VisualScriptInputAction::MODE_PRESSED: {
|
||||
|
@ -4007,7 +4007,7 @@ void VisualScriptDeconstruct::_update_elements() {
|
|||
|
||||
elements.clear();
|
||||
Variant v;
|
||||
Variant::CallError ce;
|
||||
Callable::CallError ce;
|
||||
v = Variant::construct(type, NULL, 0, ce);
|
||||
|
||||
List<PropertyInfo> pinfo;
|
||||
|
@ -4065,7 +4065,7 @@ public:
|
|||
|
||||
//virtual int get_working_memory_size() const { return 0; }
|
||||
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Variant::CallError &r_error, String &r_error_str) {
|
||||
virtual int step(const Variant **p_inputs, Variant **p_outputs, StartMode p_start_mode, Variant *p_working_mem, Callable::CallError &r_error, String &r_error_str) {
|
||||
|
||||
Variant in = *p_inputs[0];
|
||||
|
||||
|
@ -4074,7 +4074,7 @@ public:
|
|||
*p_outputs[i] = in.get(outputs[i], &valid);
|
||||
if (!valid) {
|
||||
r_error_str = "Can't obtain element '" + String(outputs[i]) + "' from " + Variant::get_type_name(in.get_type());
|
||||
r_error.error = Variant::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
r_error.error = Callable::CallError::CALL_ERROR_INVALID_METHOD;
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue