Entirely removes BIND_VMETHOD in favor of GDVIRTUAL

* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.

Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
This commit is contained in:
reduz 2021-08-22 12:37:22 -03:00
parent 2d446771d6
commit 5cecdfa8af
134 changed files with 359 additions and 410 deletions

View file

@ -1845,26 +1845,6 @@ void VisualScriptInstance::create(const Ref<VisualScript> &p_script, Object *p_o
max_input_args = 0;
max_output_args = 0;
if (Object::cast_to<Node>(p_owner)) {
// Turn on these if they exist and base is a node.
Node *node = Object::cast_to<Node>(p_owner);
if (p_script->functions.has("_process")) {
node->set_process(true);
}
if (p_script->functions.has("_physics_process")) {
node->set_physics_process(true);
}
if (p_script->functions.has("_input")) {
node->set_process_input(true);
}
if (p_script->functions.has("_unhandled_input")) {
node->set_process_unhandled_input(true);
}
if (p_script->functions.has("_unhandled_key_input")) {
node->set_process_unhandled_key_input(true);
}
}
// Setup variables.
{
List<StringName> keys;