From ee46263958cfeb9a10c1ca0fb890e40b98982815 Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 31 Aug 2022 17:27:11 -0400 Subject: [PATCH] removed version 3 checks + renamed incorrectly identified replacement for BIND_VMETHOD --- data/atlases/character_atlas.h | 5 +- data/atlases/character_atlas_entry.h | 5 +- data/auras/aura_group.h | 5 +- data/items/craft_recipe.h | 7 +- data/items/craft_recipe_helper.h | 5 +- data/items/equipment_data.h | 5 +- data/items/item_instance.cpp | 11 +- data/items/item_instance.h | 6 +- data/items/item_template.cpp | 4 +- data/items/item_template.h | 6 +- data/items/model_visual.h | 5 +- data/items/model_visual_entry.h | 7 +- data/loot/loot_data_base.cpp | 2 +- data/loot/loot_data_base.h | 6 +- data/species/entity_species_data.cpp | 2 +- data/species/entity_species_data.h | 7 +- data/species/species_instance.cpp | 9 +- data/species/species_instance.h | 5 +- data/species/species_model_data.cpp | 5 +- data/species/species_model_data.h | 8 +- data/spells/spell.cpp | 170 ++++++++--------- data/spells/spell.h | 5 +- .../spells/spell_cooldown_manipulation_data.h | 5 +- data/spells/spell_effect_visual.h | 5 +- database/ess_resource_db.cpp | 2 +- database/ess_resource_db.h | 10 +- database/ess_resource_db_folders.h | 11 +- database/ess_resource_db_map.h | 11 +- database/ess_resource_db_static.h | 5 +- drag_and_drop/es_drag_and_drop.h | 6 +- editor/ess_editor_plugin.cpp | 5 +- entities/ai/entity_ai.cpp | 50 ++--- entities/ai/entity_ai.h | 5 +- entities/auras/aura_data.cpp | 13 +- entities/auras/aura_data.h | 7 +- entities/data/character_spec.h | 7 +- entities/data/entity_class_data.cpp | 4 +- entities/data/entity_class_data.h | 7 +- entities/data/entity_data.cpp | 8 +- entities/data/entity_data.h | 7 +- entities/data/entity_data_container.cpp | 9 +- entities/data/entity_data_container.h | 6 +- entities/data/item_container_data.h | 5 +- entities/data/item_container_data_entry.h | 5 +- entities/data/vendor_item_data.h | 5 +- entities/data/vendor_item_data_entry.h | 5 +- entities/entity.cpp | 172 ++++++++---------- entities/entity.h | 7 +- entities/resources/entity_resource.cpp | 39 ++-- entities/resources/entity_resource.h | 5 +- .../resources/entity_resource_cost_data.h | 5 +- .../entity_resource_cost_data_health.h | 5 +- .../entity_resource_cost_data_resource.h | 5 +- entities/skills/entity_skill.cpp | 9 +- entities/skills/entity_skill.h | 5 +- entities/skills/entity_skill_data.h | 6 +- entities/stats/complex_level_stat_data.h | 5 +- entities/stats/level_stat_data.cpp | 2 +- entities/stats/level_stat_data.h | 5 +- entities/stats/simple_level_stat_data.h | 5 +- entities/stats/stat_data.h | 5 +- entity_enums.h | 7 +- formations/ai_formation.cpp | 4 +- formations/ai_formation.h | 5 +- infos/aura_infos.h | 5 +- infos/spell_cast_info.cpp | 5 +- infos/spell_cast_info.h | 5 +- inventory/bag.cpp | 34 ++-- inventory/bag.h | 6 +- inventory/grid_bag.h | 6 +- inventory/inventory.h | 6 +- inventory/normal_bag.h | 6 +- item_enums.h | 6 +- material_cache/ess_material_cache.cpp | 12 +- material_cache/ess_material_cache.h | 7 +- material_cache/ess_material_cache_pcm.h | 7 +- pipelines/spell_damage_info.cpp | 5 +- pipelines/spell_damage_info.h | 5 +- pipelines/spell_heal_info.cpp | 5 +- pipelines/spell_heal_info.h | 5 +- .../actionbar/action_bar_button_entry.cpp | 5 +- profiles/actionbar/action_bar_button_entry.h | 6 +- profiles/actionbar/action_bar_entry.cpp | 5 +- profiles/actionbar/action_bar_entry.h | 8 +- profiles/actionbar/action_bar_profile.cpp | 6 +- profiles/actionbar/action_bar_profile.h | 9 +- profiles/class_profile.cpp | 5 +- profiles/class_profile.h | 7 +- profiles/input/input_profile.cpp | 6 +- profiles/input/input_profile.h | 6 +- profiles/input/input_profile_modifier.h | 7 +- profiles/input/input_profile_modifier_entry.h | 6 +- profiles/player_profile.cpp | 5 +- profiles/player_profile.h | 7 +- singletons/ess.h | 9 +- singletons/profile_manager.cpp | 15 +- singletons/profile_manager.h | 6 +- skeleton/character_skeleton_2d.cpp | 4 +- skeleton/character_skeleton_2d.h | 7 +- skeleton/character_skeleton_3d.cpp | 4 +- skeleton/character_skeleton_3d.h | 7 +- skeleton/entity_skeleton_data.h | 6 +- skeleton/skeleton_model_entry.h | 5 +- spawners/ess_entity_spawner.cpp | 2 +- spell_enums.h | 5 +- utility/entity_create_info.cpp | 9 +- utility/entity_create_info.h | 6 +- 107 files changed, 353 insertions(+), 734 deletions(-) diff --git a/data/atlases/character_atlas.h b/data/atlases/character_atlas.h index 35ba9bf..ccc14ba 100644 --- a/data/atlases/character_atlas.h +++ b/data/atlases/character_atlas.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class CharacterAtlas : public Resource { GDCLASS(CharacterAtlas, Resource); diff --git a/data/atlases/character_atlas_entry.h b/data/atlases/character_atlas_entry.h index 3e91bfb..053b896 100644 --- a/data/atlases/character_atlas_entry.h +++ b/data/atlases/character_atlas_entry.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class CharacterAtlasEntry : public Resource { GDCLASS(CharacterAtlasEntry, Resource); diff --git a/data/auras/aura_group.h b/data/auras/aura_group.h index a641ad8..7654fa1 100644 --- a/data/auras/aura_group.h +++ b/data/auras/aura_group.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class AuraGroup : public Resource { GDCLASS(AuraGroup, Resource); diff --git a/data/items/craft_recipe.h b/data/items/craft_recipe.h index 52173e3..0bb880f 100644 --- a/data/items/craft_recipe.h +++ b/data/items/craft_recipe.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" #include "core/string/ustring.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#include "core/ustring.h" -#endif + #include "item_template.h" diff --git a/data/items/craft_recipe_helper.h b/data/items/craft_recipe_helper.h index e410050..989ea57 100644 --- a/data/items/craft_recipe_helper.h +++ b/data/items/craft_recipe_helper.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "item_template.h" diff --git a/data/items/equipment_data.h b/data/items/equipment_data.h index 67820f7..2ad8583 100644 --- a/data/items/equipment_data.h +++ b/data/items/equipment_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class ItemInstance; class ItemTemplate; diff --git a/data/items/item_instance.cpp b/data/items/item_instance.cpp index 3e87994..c48752a 100644 --- a/data/items/item_instance.cpp +++ b/data/items/item_instance.cpp @@ -197,11 +197,8 @@ Dictionary ItemInstance::_to_dict() { return dict; } void ItemInstance::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _item_template_path = dict.get("item_path", 0); @@ -271,12 +268,12 @@ void ItemInstance::_bind_methods() { ClassDB::bind_method(D_METHOD("stat_modifiers_set", "mods"), &ItemInstance::stat_modifiers_set); ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "stat_modifiers", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_DEFAULT, ""), "stat_modifiers_set", "stat_modifiers_get"); - D_METHOD("_get_description", "desc"); + GDVIRTUAL_BIND("_get_description", "desc"); ClassDB::bind_method(D_METHOD("get_description"), &ItemInstance::get_description); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict", "dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict", "dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &ItemInstance::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &ItemInstance::to_dict); diff --git a/data/items/item_instance.h b/data/items/item_instance.h index 659aca3..6945785 100644 --- a/data/items/item_instance.h +++ b/data/items/item_instance.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "../../item_enums.h" diff --git a/data/items/item_template.cpp b/data/items/item_template.cpp index 2185d8a..e02b98d 100644 --- a/data/items/item_template.cpp +++ b/data/items/item_template.cpp @@ -441,7 +441,7 @@ void ItemTemplate::_validate_property(PropertyInfo &property) const { } void ItemTemplate::_bind_methods() { - D_METHOD("_create_item_instance"); + GDVIRTUAL_BIND("_create_item_instance"); ClassDB::bind_method(D_METHOD("create_item_instance"), &ItemTemplate::create_item_instance); @@ -568,7 +568,7 @@ void ItemTemplate::_bind_methods() { ClassDB::bind_method(D_METHOD("set_text_translation_key", "value"), &ItemTemplate::set_text_translation_key); ADD_PROPERTY(PropertyInfo(Variant::STRING, "text_translation_key"), "set_text_translation_key", "get_text_translation_key"); - D_METHOD("_get_description"); + GDVIRTUAL_BIND("_get_description"); ClassDB::bind_method(D_METHOD("get_description"), &ItemTemplate::get_description); //StatMods Property binds diff --git a/data/items/item_template.h b/data/items/item_template.h index e03b202..93339e2 100644 --- a/data/items/item_template.h +++ b/data/items/item_template.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "scene/resources/texture.h" diff --git a/data/items/model_visual.h b/data/items/model_visual.h index fd4c9f3..c1c96ea 100644 --- a/data/items/model_visual.h +++ b/data/items/model_visual.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "../../item_enums.h" #include "model_visual_entry.h" diff --git a/data/items/model_visual_entry.h b/data/items/model_visual_entry.h index e65521e..10ae84f 100644 --- a/data/items/model_visual_entry.h +++ b/data/items/model_visual_entry.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/string/ustring.h" #include "core/math/color.h" -#else -#include "core/resource.h" -#include "core/ustring.h" -#include "core/color.h" -#endif + #include "scene/resources/texture.h" diff --git a/data/loot/loot_data_base.cpp b/data/loot/loot_data_base.cpp index 21ebefc..42aec02 100644 --- a/data/loot/loot_data_base.cpp +++ b/data/loot/loot_data_base.cpp @@ -278,7 +278,7 @@ void LootDataBase::_bind_methods() { ClassDB::bind_method(D_METHOD("get_item", "index"), &LootDataBase::get_item); ClassDB::bind_method(D_METHOD("set_item", "index", "value"), &LootDataBase::set_item); - D_METHOD("_get_loot"); + GDVIRTUAL_BIND("_get_loot"); ClassDB::bind_method(D_METHOD("get_loot"), &LootDataBase::get_loot); ClassDB::bind_method(D_METHOD("_get_loot"), &LootDataBase::_get_loot); diff --git a/data/loot/loot_data_base.h b/data/loot/loot_data_base.h index 6da9d35..55548e7 100644 --- a/data/loot/loot_data_base.h +++ b/data/loot/loot_data_base.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/templates/vector.h" #include "core/variant/array.h" -#else -#include "core/vector.h" -#include "core/array.h" -#endif + #include "../items/item_template.h" diff --git a/data/species/entity_species_data.cpp b/data/species/entity_species_data.cpp index 961da4b..3eece9d 100644 --- a/data/species/entity_species_data.cpp +++ b/data/species/entity_species_data.cpp @@ -176,7 +176,7 @@ void EntitySpeciesData::_validate_property(PropertyInfo &property) const { } void EntitySpeciesData::_bind_methods() { - D_METHOD("_generate_name", "seed"); + GDVIRTUAL_BIND("_generate_name", "seed"); ClassDB::bind_method(D_METHOD("generate_name"), &EntitySpeciesData::generate_name); diff --git a/data/species/entity_species_data.h b/data/species/entity_species_data.h index 388bd94..0f2c4b8 100644 --- a/data/species/entity_species_data.h +++ b/data/species/entity_species_data.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" #include "core/string/ustring.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#include "core/ustring.h" -#endif + #include "../../entity_enums.h" diff --git a/data/species/species_instance.cpp b/data/species/species_instance.cpp index ed2e057..51399f9 100644 --- a/data/species/species_instance.cpp +++ b/data/species/species_instance.cpp @@ -115,11 +115,8 @@ Dictionary SpeciesInstance::_to_dict() { return dict; } void SpeciesInstance::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _id = dict.get("id", 0); set_species_path(dict.get("species_path", "")); @@ -171,8 +168,8 @@ void SpeciesInstance::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::INT, "head_index"), "set_head_index", "get_head_index"); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &SpeciesInstance::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &SpeciesInstance::to_dict); diff --git a/data/species/species_instance.h b/data/species/species_instance.h index 5586f9b..4ce8ab1 100644 --- a/data/species/species_instance.h +++ b/data/species/species_instance.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "../items/model_visual_entry.h" diff --git a/data/species/species_model_data.cpp b/data/species/species_model_data.cpp index cdea253..f2897b7 100644 --- a/data/species/species_model_data.cpp +++ b/data/species/species_model_data.cpp @@ -27,11 +27,8 @@ SOFTWARE. #include "../../defines.h" #include "../../singletons/ess.h" -#if VERSION_MAJOR > 3 #include "core/string/ustring.h" -#else -#include "core/ustring.h" -#endif + int SpeciesModelData::get_id() { diff --git a/data/species/species_model_data.h b/data/species/species_model_data.h index 650be2d..269a8be 100644 --- a/data/species/species_model_data.h +++ b/data/species/species_model_data.h @@ -25,17 +25,11 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" #include "core/string/ustring.h" #include "core/math/color.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#include "core/ustring.h" -#include "core/color.h" -#endif + #include "scene/resources/packed_scene.h" diff --git a/data/spells/spell.cpp b/data/spells/spell.cpp index 936fa01..94e554b 100644 --- a/data/spells/spell.cpp +++ b/data/spells/spell.cpp @@ -2348,10 +2348,10 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("cast_interrupts", "info"), &Spell::cast_interrupts); ClassDB::bind_method(D_METHOD("cast_finishs", "info"), &Spell::cast_finishs); - D_METHOD("_cast_starts", "info", "SpellCastInfo"); - D_METHOD("_cast_starts_triggered", "info", "SpellCastInfo"); - D_METHOD("_cast_interrupts", "info", "SpellCastInfo"); - D_METHOD("_cast_finishs", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_cast_starts", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_cast_starts_triggered", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_cast_interrupts", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_cast_finishs", "info", "SpellCastInfo"); //Aura Commands ClassDB::bind_method(D_METHOD("aura_sapply", "info"), &Spell::aura_sapply); @@ -2362,13 +2362,13 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("aura_removes_dispell", "aura"), &Spell::aura_removes_dispell); ClassDB::bind_method(D_METHOD("aura_supdate", "aura", "delta"), &Spell::aura_supdate); - D_METHOD("_aura_sapply", "info", "AuraApplyInfo"); - D_METHOD("_aura_sdeapply", "info", "AuraData"); - D_METHOD("_aura_sadd", "aura", "AuraData"); - D_METHOD("_aura_sremove", "aura", "AuraData"); - D_METHOD("_aura_removes_expired", "info", "AuraData"); - D_METHOD("_aura_removes_dispell", "info", "AuraData"); - D_METHOD("_aura_supdate", "info", "AuraData", "delta"); + GDVIRTUAL_BIND("_aura_sapply", "info", "AuraApplyInfo"); + GDVIRTUAL_BIND("_aura_sdeapply", "info", "AuraData"); + GDVIRTUAL_BIND("_aura_sadd", "aura", "AuraData"); + GDVIRTUAL_BIND("_aura_sremove", "aura", "AuraData"); + GDVIRTUAL_BIND("_aura_removes_expired", "info", "AuraData"); + GDVIRTUAL_BIND("_aura_removes_dispell", "info", "AuraData"); + GDVIRTUAL_BIND("_aura_supdate", "info", "AuraData", "delta"); ClassDB::bind_method(D_METHOD("_aura_sapply", "info"), &Spell::_aura_sapply); ClassDB::bind_method(D_METHOD("_aura_sdeapply", "aura"), &Spell::_aura_sdeapply); @@ -2384,23 +2384,23 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("son_spell_hit", "info"), &Spell::son_spell_hit); ClassDB::bind_method(D_METHOD("son_physics_process", "info", "delta"), &Spell::son_physics_process); - D_METHOD("_son_cast_player_moved", "info", "SpellCastInfo"); - D_METHOD("_son_cast_damage_received", "info", "SpellCastInfo"); - D_METHOD("_son_spell_hit", "info", "SpellCastInfo"); - D_METHOD("_son_physics_process", "info", "SpellCastInfo", "delta"); + GDVIRTUAL_BIND("_son_cast_player_moved", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_son_cast_damage_received", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_son_spell_hit", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_son_physics_process", "info", "SpellCastInfo", "delta"); //Clientside Event Handlers - D_METHOD("_notification_scast", "what", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_notification_scast", "what", "info", "SpellCastInfo"); ClassDB::bind_method(D_METHOD("notification_scast", "what", "info"), &Spell::notification_scast); - D_METHOD("_notification_ccast", "what", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_notification_ccast", "what", "info", "SpellCastInfo"); ClassDB::bind_method(D_METHOD("notification_ccast", "what", "info"), &Spell::notification_ccast); //Aura EventHandlers - D_METHOD("_notification_saura", "what", "data", "AuraData"); - D_METHOD("_notification_sheal", "what", "data", "AuraData", "data", "SpellHealInfo"); - D_METHOD("_notification_aura_scast", "what", "data", "AuraData", "info", "SpellCastInfo"); - D_METHOD("_notification_sdamage", "what", "data", "AuraData", "data", "SpellDamageInfo"); + GDVIRTUAL_BIND("_notification_saura", "what", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_sheal", "what", "data", "AuraData", "data", "SpellHealInfo"); + GDVIRTUAL_BIND("_notification_aura_scast", "what", "data", "AuraData", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_notification_sdamage", "what", "data", "AuraData", "data", "SpellDamageInfo"); ClassDB::bind_method(D_METHOD("notification_saura", "what", "data"), &Spell::notification_saura); ClassDB::bind_method(D_METHOD("notification_sheal", "what", "aura", "info"), &Spell::notification_sheal); @@ -2430,33 +2430,33 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("notification_sentity_resource_added", "data", "value"), &Spell::notification_sentity_resource_added); ClassDB::bind_method(D_METHOD("notification_sentity_resource_removed", "data", "value"), &Spell::notification_sentity_resource_removed); - D_METHOD("_son_remove", "data", "AuraData"); - D_METHOD("_son_remove_expired", "data", "AuraData"); - D_METHOD("_son_remove_dispell", "data", "AuraData"); + GDVIRTUAL_BIND("_son_remove", "data", "AuraData"); + GDVIRTUAL_BIND("_son_remove_expired", "data", "AuraData"); + GDVIRTUAL_BIND("_son_remove_dispell", "data", "AuraData"); - D_METHOD("_notification_sdeath", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_sdeath", "data", "AuraData"); - D_METHOD("_notification_scooldown_added", "data", "AuraData", "id", "value"); - D_METHOD("_notification_scooldown_removed", "data", "AuraData", "id", "value"); - D_METHOD("_notification_scategory_cooldown_added", "data", "AuraData", "id", "value"); - D_METHOD("_notification_scategory_cooldown_removed", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_scooldown_added", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_scooldown_removed", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_scategory_cooldown_added", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_scategory_cooldown_removed", "data", "AuraData", "id", "value"); - D_METHOD("_notification_sgcd_started", "data", "AuraData", "gcd"); - D_METHOD("_notification_sgcd_finished", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_sgcd_started", "data", "AuraData", "gcd"); + GDVIRTUAL_BIND("_notification_sgcd_finished", "data", "AuraData"); - D_METHOD("_son_physics_process_aura", "data", "AuraData"); + GDVIRTUAL_BIND("_son_physics_process_aura", "data", "AuraData"); - D_METHOD("_notification_sxp_gained", "data", "AuraData", "value"); - D_METHOD("_notification_slevel_up", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_sxp_gained", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_slevel_up", "data", "AuraData", "value"); - D_METHOD("_notification_sentity_resource_added", "data", "AuraData", "value"); - D_METHOD("_notification_sentity_resource_removed", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_sentity_resource_added", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_sentity_resource_removed", "data", "AuraData", "value"); //Aura Clientside Event Handlers - D_METHOD("_notification_caura", "what", "data", "AuraData"); - D_METHOD("_notification_cheal", "what", "data", "AuraData", "data", "SpellHealInfo"); - D_METHOD("_notification_aura_ccast", "what", "data", "AuraData", "info", "SpellCastInfo"); - D_METHOD("_notification_cdamage", "what", "data", "AuraData", "data", "SpellDamageInfo"); + GDVIRTUAL_BIND("_notification_caura", "what", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_cheal", "what", "data", "AuraData", "data", "SpellHealInfo"); + GDVIRTUAL_BIND("_notification_aura_ccast", "what", "data", "AuraData", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_notification_cdamage", "what", "data", "AuraData", "data", "SpellDamageInfo"); ClassDB::bind_method(D_METHOD("notification_caura", "what", "data"), &Spell::notification_caura); ClassDB::bind_method(D_METHOD("notification_cheal", "what", "aura", "info"), &Spell::notification_cheal); @@ -2479,45 +2479,45 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("notification_centity_resource_added", "data", "value"), &Spell::notification_centity_resource_added); ClassDB::bind_method(D_METHOD("notification_centity_resource_removed", "data", "value"), &Spell::notification_centity_resource_removed); - D_METHOD("_con_cast_failed", "data", "AuraData", "info", "SpellCastInfo"); - D_METHOD("_con_cast_started", "data", "AuraData", "info", "SpellCastInfo"); - D_METHOD("_con_cast_state_changed", "data", "AuraData", "info", "SpellCastInfo"); - D_METHOD("_con_cast_finished", "data", "AuraData", "info", "SpellCastInfo"); - D_METHOD("_con_spell_cast_success", "data", "AuraData", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_con_cast_failed", "data", "AuraData", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_con_cast_started", "data", "AuraData", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_con_cast_state_changed", "data", "AuraData", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_con_cast_finished", "data", "AuraData", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_con_spell_cast_success", "data", "AuraData", "info", "SpellCastInfo"); - D_METHOD("_notification_cdeath", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_cdeath", "data", "AuraData"); - D_METHOD("_notification_ccooldown_added", "data", "AuraData", "id", "value"); - D_METHOD("_notification_ccooldown_removed", "data", "AuraData", "id", "value"); - D_METHOD("_notification_ccategory_cooldown_added", "data", "AuraData", "id", "value"); - D_METHOD("_notification_ccategory_cooldown_removed", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_ccooldown_added", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_ccooldown_removed", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_ccategory_cooldown_added", "data", "AuraData", "id", "value"); + GDVIRTUAL_BIND("_notification_ccategory_cooldown_removed", "data", "AuraData", "id", "value"); - D_METHOD("_con_aura_added", "data", "AuraData"); - D_METHOD("_con_aura_removed", "data", "AuraData"); - D_METHOD("_con_aura_refresh", "data", "AuraData"); + GDVIRTUAL_BIND("_con_aura_added", "data", "AuraData"); + GDVIRTUAL_BIND("_con_aura_removed", "data", "AuraData"); + GDVIRTUAL_BIND("_con_aura_refresh", "data", "AuraData"); - D_METHOD("_con_damage_dealt", "data", "AuraData", "info", "SpellDamageInfo"); - D_METHOD("_con_dealt_damage", "data", "AuraData", "info", "SpellDamageInfo"); - D_METHOD("_con_heal_dealt", "data", "AuraData", "info", "SpellHealInfo"); - D_METHOD("_con_dealt_heal", "data", "AuraData", "info", "SpellHealInfo"); + GDVIRTUAL_BIND("_con_damage_dealt", "data", "AuraData", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_con_dealt_damage", "data", "AuraData", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_con_heal_dealt", "data", "AuraData", "info", "SpellHealInfo"); + GDVIRTUAL_BIND("_con_dealt_heal", "data", "AuraData", "info", "SpellHealInfo"); - D_METHOD("_notification_cgcd_started", "data", "AuraData", "gcd"); - D_METHOD("_notification_cgcd_finished", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_cgcd_started", "data", "AuraData", "gcd"); + GDVIRTUAL_BIND("_notification_cgcd_finished", "data", "AuraData"); - D_METHOD("_notification_cxp_gained", "data", "AuraData", "value"); - D_METHOD("_notification_clevel_up", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_cxp_gained", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_clevel_up", "data", "AuraData", "value"); - D_METHOD("_notification_centity_resource_added", "data", "AuraData", "value"); - D_METHOD("_notification_centity_resource_removed", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_centity_resource_added", "data", "AuraData", "value"); + GDVIRTUAL_BIND("_notification_centity_resource_removed", "data", "AuraData", "value"); //Equipment - D_METHOD("_equip_should_deny", "data", "AuraData", "equip_slot", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_should_deny", "data", "AuraData", "equip_slot", "item", "ItemInstance"); - D_METHOD("_equip_son_success", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_son_fail", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_con_success", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_con_fail", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_son_success", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_son_fail", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_con_success", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_con_fail", "data", "AuraData", "equip_slot", "item", "ItemInstance", "old_item", "ItemInstance", "bag_slot"); ClassDB::bind_method(D_METHOD("equip_should_deny", "data", "equip_slot", "item"), &Spell::equip_should_deny); @@ -2530,20 +2530,20 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("calculate_initial_damage", "data"), &Spell::calculate_initial_damage); ClassDB::bind_method(D_METHOD("handle_spell_damage", "data"), &Spell::handle_spell_damage); - D_METHOD("_calculate_initial_damage", "data", "SpellDamageInfo"); - D_METHOD("_handle_spell_damage", "data", "SpellDamageInfo"); + GDVIRTUAL_BIND("_calculate_initial_damage", "data", "SpellDamageInfo"); + GDVIRTUAL_BIND("_handle_spell_damage", "data", "SpellDamageInfo"); ClassDB::bind_method(D_METHOD("calculate_initial_heal", "data"), &Spell::calculate_initial_heal); ClassDB::bind_method(D_METHOD("handle_spell_heal", "data"), &Spell::handle_spell_heal); - D_METHOD("_calculate_initial_heal", "data", "SpellHealInfo"); - D_METHOD("_handle_spell_heal", "data", "SpellHealInfo"); + GDVIRTUAL_BIND("_calculate_initial_heal", "data", "SpellHealInfo"); + GDVIRTUAL_BIND("_handle_spell_heal", "data", "SpellHealInfo"); ClassDB::bind_method(D_METHOD("handle_projectile", "info"), &Spell::handle_projectile); ClassDB::bind_method(D_METHOD("handle_effect", "info"), &Spell::handle_effect); - D_METHOD("_handle_projectile", "info", "SpellCastInfo"); - D_METHOD("_handle_effect", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_handle_projectile", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_handle_effect", "info", "SpellCastInfo"); ClassDB::bind_method(D_METHOD("handle_gcd", "info"), &Spell::handle_gcd); ClassDB::bind_method(D_METHOD("handle_cooldown", "info"), &Spell::handle_cooldown); @@ -2567,7 +2567,7 @@ void Spell::_bind_methods() { //Aura Calculations / Queries ClassDB::bind_method(D_METHOD("setup_aura_data", "data", "info"), &Spell::setup_aura_data); - D_METHOD("_setup_aura_data", "data", "AuraData", "info", "AuraApplyInfo"); + GDVIRTUAL_BIND("_setup_aura_data", "data", "AuraData", "info", "AuraApplyInfo"); ClassDB::bind_method(D_METHOD("_setup_aura_data", "data", "info"), &Spell::_setup_aura_data); @@ -2577,10 +2577,10 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("aura_calculate_initial_damage", "aura_data", "info"), &Spell::aura_calculate_initial_damage); ClassDB::bind_method(D_METHOD("handle_aura_damage", "aura_data", "data"), &Spell::handle_aura_damage); - D_METHOD("_aura_sapply_passives_damage_receive", "data", "SpellDamageInfo"); - D_METHOD("_aura_sapply_passives_damage_deal", "data", "SpellDamageInfo"); - D_METHOD("_aura_calculate_initial_damage", "data", "AuraData", "info", "AuraApplyInfo"); - D_METHOD("_handle_aura_damage", "data", "AuraData", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_aura_sapply_passives_damage_receive", "data", "SpellDamageInfo"); + GDVIRTUAL_BIND("_aura_sapply_passives_damage_deal", "data", "SpellDamageInfo"); + GDVIRTUAL_BIND("_aura_calculate_initial_damage", "data", "AuraData", "info", "AuraApplyInfo"); + GDVIRTUAL_BIND("_handle_aura_damage", "data", "AuraData", "info", "SpellDamageInfo"); ClassDB::bind_method(D_METHOD("_aura_sapply_passives_damage_receive", "info"), &Spell::_aura_sapply_passives_damage_receive); ClassDB::bind_method(D_METHOD("_aura_sapply_passives_damage_deal", "info"), &Spell::_aura_sapply_passives_damage_deal); @@ -2593,10 +2593,10 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("aura_calculate_initial_heal", "aura_data", "info"), &Spell::aura_calculate_initial_heal); ClassDB::bind_method(D_METHOD("handle_aura_heal", "aura_data", "data"), &Spell::handle_aura_heal); - D_METHOD("_aura_sapply_passives_heal_receive", "info", "SpellDamageInfo"); - D_METHOD("_aura_sapply_passives_heal_deal", "info", "SpellDamageInfo"); - D_METHOD("_aura_calculate_initial_heal", "aura_data", "AuraData", "info", "AuraApplyInfo"); - D_METHOD("_handle_aura_heal", "aura_data", "AuraData", "spell_heal_info", "SpellHealInfo"); + GDVIRTUAL_BIND("_aura_sapply_passives_heal_receive", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_aura_sapply_passives_heal_deal", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_aura_calculate_initial_heal", "aura_data", "AuraData", "info", "AuraApplyInfo"); + GDVIRTUAL_BIND("_handle_aura_heal", "aura_data", "AuraData", "spell_heal_info", "SpellHealInfo"); ClassDB::bind_method(D_METHOD("_aura_sapply_passives_heal_receive", "info"), &Spell::_aura_sapply_passives_heal_receive); ClassDB::bind_method(D_METHOD("_aura_sapply_passives_heal_deal", "info"), &Spell::_aura_sapply_passives_heal_deal); @@ -2696,7 +2696,7 @@ void Spell::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "spells_cast_on_learn", PROPERTY_HINT_NONE, "17/17:Spell", PROPERTY_USAGE_DEFAULT, "Spell"), "spells_cast_on_learn_set", "spells_cast_on_learn_get"); ADD_GROUP("Texts", "text"); - D_METHOD("_get_description", "class_level", "character_level"); + GDVIRTUAL_BIND("_get_description", "class_level", "character_level"); ADD_PROPERTY(PropertyInfo(Variant::STRING, "text_name"), "set_name", "get_name"); @@ -2938,7 +2938,7 @@ void Spell::_bind_methods() { ClassDB::bind_method(D_METHOD("aura_set_visual_spell_effects", "value"), &Spell::aura_set_visual_spell_effects); ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "aura_visual_spell_effects", PROPERTY_HINT_RESOURCE_TYPE, "SpellEffectVisual"), "aura_set_visual_spell_effects", "aura_get_visual_spell_effects"); - D_METHOD("_aura_get_description", "class_level", "character_level"); + GDVIRTUAL_BIND("_aura_get_description", "class_level", "character_level"); ADD_GROUP("Aura Texts", "aura_text"); ClassDB::bind_method(D_METHOD("aura_get_text_translation_key"), &Spell::aura_get_text_translation_key); diff --git a/data/spells/spell.h b/data/spells/spell.h index 00d4538..d6266d9 100644 --- a/data/spells/spell.h +++ b/data/spells/spell.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "scene/resources/texture.h" diff --git a/data/spells/spell_cooldown_manipulation_data.h b/data/spells/spell_cooldown_manipulation_data.h index 6a9df6e..c1328c3 100644 --- a/data/spells/spell_cooldown_manipulation_data.h +++ b/data/spells/spell_cooldown_manipulation_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class SpellCooldownManipulationData : public RefCounted { GDCLASS(SpellCooldownManipulationData, RefCounted); diff --git a/data/spells/spell_effect_visual.h b/data/spells/spell_effect_visual.h index fa53d00..d0fcd1c 100644 --- a/data/spells/spell_effect_visual.h +++ b/data/spells/spell_effect_visual.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class SpellEffectVisual : public Resource { GDCLASS(SpellEffectVisual, Resource); diff --git a/database/ess_resource_db.cpp b/database/ess_resource_db.cpp index d15e8e3..572d375 100644 --- a/database/ess_resource_db.cpp +++ b/database/ess_resource_db.cpp @@ -363,6 +363,6 @@ void ESSResourceDB::_bind_methods() { ClassDB::bind_method(D_METHOD("clear"), &ESSResourceDB::clear); ClassDB::bind_method(D_METHOD("add_entity_resource_db", "other"), &ESSResourceDB::add_entity_resource_db); - D_METHOD("_initialize"); + GDVIRTUAL_BIND("_initialize"); ClassDB::bind_method(D_METHOD("initialize"), &ESSResourceDB::initialize); } diff --git a/database/ess_resource_db.h b/database/ess_resource_db.h index 2d5cadc..466170e 100644 --- a/database/ess_resource_db.h +++ b/database/ess_resource_db.h @@ -25,21 +25,13 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" #include "core/templates/hash_map.h" #include "core/string/ustring.h" #include "core/core_bind.h" #include "core/variant/variant.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#include "core/hash_map.h" -#include "core/ustring.h" -#include "core/bind/core_bind.h" -#include "core/variant.h" -#endif + #include "../item_enums.h" diff --git a/database/ess_resource_db_folders.h b/database/ess_resource_db_folders.h index 660851f..59ef72e 100644 --- a/database/ess_resource_db_folders.h +++ b/database/ess_resource_db_folders.h @@ -25,7 +25,6 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/variant/variant.h" #include "core/templates/vector.h" #include "core/templates/hash_map.h" @@ -33,15 +32,7 @@ SOFTWARE. #include "core/config/engine.h" #include "core/variant/array.h" #include "core/core_bind.h" -#else -#include "core/variant.h" -#include "core/vector.h" -#include "core/hash_map.h" -#include "core/ustring.h" -#include "core/engine.h" -#include "core/array.h" -#include "core/bind/core_bind.h" -#endif + #include "ess_resource_db_map.h" diff --git a/database/ess_resource_db_map.h b/database/ess_resource_db_map.h index c5f6f5c..8248a14 100644 --- a/database/ess_resource_db_map.h +++ b/database/ess_resource_db_map.h @@ -27,7 +27,6 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/variant/variant.h" #include "core/templates/vector.h" #include "core/templates/hash_map.h" @@ -35,15 +34,7 @@ SOFTWARE. #include "core/config/engine.h" #include "core/variant/array.h" #include "core/core_bind.h" -#else -#include "core/variant.h" -#include "core/vector.h" -#include "core/hash_map.h" -#include "core/ustring.h" -#include "core/engine.h" -#include "core/array.h" -#include "core/bind/core_bind.h" -#endif + #include "scene/main/node.h" diff --git a/database/ess_resource_db_static.h b/database/ess_resource_db_static.h index 5cc967f..f281e87 100644 --- a/database/ess_resource_db_static.h +++ b/database/ess_resource_db_static.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/templates/hash_map.h" -#else -#include "core/hash_map.h" -#endif + #include "ess_resource_db.h" diff --git a/drag_and_drop/es_drag_and_drop.h b/drag_and_drop/es_drag_and_drop.h index 18a8fdd..5148417 100644 --- a/drag_and_drop/es_drag_and_drop.h +++ b/drag_and_drop/es_drag_and_drop.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/string/ustring.h" -#else -#include "core/reference.h" -#include "core/ustring.h" -#endif + #include "scene/main/node.h" diff --git a/editor/ess_editor_plugin.cpp b/editor/ess_editor_plugin.cpp index aeade8c..0d9c490 100644 --- a/editor/ess_editor_plugin.cpp +++ b/editor/ess_editor_plugin.cpp @@ -30,11 +30,8 @@ void ESSEditorPlugin::fix_ids(Variant param) { ESSEditorPlugin::ESSEditorPlugin(EditorNode *p_node) { editor = p_node; -#if VERSION_MAJOR > 3 //editor->add_tool_menu_item("ESS: make ids unique", this, "fix_ids"); -#else - editor->add_tool_menu_item("ESS: make ids unique", this, "fix_ids"); -#endif + } ESSEditorPlugin::~ESSEditorPlugin() { diff --git a/entities/ai/entity_ai.cpp b/entities/ai/entity_ai.cpp index 9228fa8..735d8ec 100644 --- a/entities/ai/entity_ai.cpp +++ b/entities/ai/entity_ai.cpp @@ -354,13 +354,13 @@ EntityAI::~EntityAI() { } void EntityAI::_bind_methods() { - D_METHOD("_on_set_owner"); + GDVIRTUAL_BIND("_on_set_owner"); - D_METHOD("_update", "delta"); - D_METHOD("_pet_update", "delta"); + GDVIRTUAL_BIND("_update", "delta"); + GDVIRTUAL_BIND("_pet_update", "delta"); - D_METHOD("_move", "delta"); - D_METHOD("_pet_move", "delta"); + GDVIRTUAL_BIND("_move", "delta"); + GDVIRTUAL_BIND("_pet_move", "delta"); ClassDB::bind_method(D_METHOD("get_enabled"), &EntityAI::get_enabled); ClassDB::bind_method(D_METHOD("set_enabled", "value"), &EntityAI::set_enabled); @@ -399,10 +399,10 @@ void EntityAI::_bind_methods() { ClassDB::bind_method(D_METHOD("_on_set_owner"), &EntityAI::_on_set_owner); //EventHandlers - D_METHOD("_notification_saura", "what", "data", "AuraData"); - D_METHOD("_notification_sheal", "what", "info", "SpellHealInfo"); - D_METHOD("_notification_scast", "what", "info", "SpellCastInfo"); - D_METHOD("_notification_sdamage", "what", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_notification_saura", "what", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_sheal", "what", "info", "SpellHealInfo"); + GDVIRTUAL_BIND("_notification_scast", "what", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_notification_sdamage", "what", "info", "SpellDamageInfo"); ClassDB::bind_method(D_METHOD("notification_saura", "what", "data"), &EntityAI::notification_saura); ClassDB::bind_method(D_METHOD("notification_sheal", "what", "info"), &EntityAI::notification_sheal); @@ -426,31 +426,31 @@ void EntityAI::_bind_methods() { ClassDB::bind_method(D_METHOD("notification_sentity_resource_added", "resource"), &EntityAI::notification_sentity_resource_added); ClassDB::bind_method(D_METHOD("notification_sentity_resource_removed", "resource"), &EntityAI::notification_sentity_resource_removed); - D_METHOD("_notification_sdeath", "data", "Entity"); + GDVIRTUAL_BIND("_notification_sdeath", "data", "Entity"); - D_METHOD("_notification_scooldown_added", "id", "value"); - D_METHOD("_notification_scooldown_removed", "id", "value"); + GDVIRTUAL_BIND("_notification_scooldown_added", "id", "value"); + GDVIRTUAL_BIND("_notification_scooldown_removed", "id", "value"); - D_METHOD("_notification_scategory_cooldown_added", "id", "value"); - D_METHOD("_notification_scategory_cooldown_removed", "id", "value"); + GDVIRTUAL_BIND("_notification_scategory_cooldown_added", "id", "value"); + GDVIRTUAL_BIND("_notification_scategory_cooldown_removed", "id", "value"); - D_METHOD("_notification_sgcd_started", "entity", "Entity", "gcd"); - D_METHOD("_notification_sgcd_finished", "entity", "Entity"); + GDVIRTUAL_BIND("_notification_sgcd_started", "entity", "Entity", "gcd"); + GDVIRTUAL_BIND("_notification_sgcd_finished", "entity", "Entity"); - D_METHOD("_notification_sxp_gained", "entity", "Entity", "value"); - D_METHOD("_notification_slevel_up", "entity", "Entity", "value"); + GDVIRTUAL_BIND("_notification_sxp_gained", "entity", "Entity", "value"); + GDVIRTUAL_BIND("_notification_slevel_up", "entity", "Entity", "value"); - D_METHOD("_notification_sentity_resource_added", "resource", "EntityResource"); - D_METHOD("_notification_sentity_resource_removed", "resource", "EntityResource"); + GDVIRTUAL_BIND("_notification_sentity_resource_added", "resource", "EntityResource"); + GDVIRTUAL_BIND("_notification_sentity_resource_removed", "resource", "EntityResource"); //Equipment - D_METHOD("_equip_should_deny", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "equip_slot", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_should_deny", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "equip_slot", "item", "ItemInstance"); - D_METHOD("_equip_son_success", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_son_fail", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_con_success", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_con_fail", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_son_success", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_son_fail", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_con_success", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_con_fail", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); ClassDB::bind_method(D_METHOD("equip_should_deny", "entity", "equip_slot", "item"), &EntityAI::equip_should_deny_bind); diff --git a/entities/ai/entity_ai.h b/entities/ai/entity_ai.h index 9d500c3..8433207 100644 --- a/entities/ai/entity_ai.h +++ b/entities/ai/entity_ai.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "scene/main/node.h" diff --git a/entities/auras/aura_data.cpp b/entities/auras/aura_data.cpp index 45bc728..1cf3962 100644 --- a/entities/auras/aura_data.cpp +++ b/entities/auras/aura_data.cpp @@ -308,11 +308,8 @@ Dictionary AuraData::_to_dict() { return dict; } void AuraData::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + ERR_FAIL_COND(!ESS::get_singleton()->get_resource_db().is_valid()); _aura_id = dict.get("aura_id", 0); @@ -447,8 +444,8 @@ void AuraData::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::REAL, "slow"), "set_slow", "get_slow"); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &AuraData::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &AuraData::to_dict); @@ -456,8 +453,8 @@ void AuraData::_bind_methods() { ClassDB::bind_method(D_METHOD("_to_dict"), &AuraData::_to_dict); //Networking - D_METHOD("_to_send_array"); - D_METHOD("_from_send_array", "arr"); + GDVIRTUAL_BIND("_to_send_array"); + GDVIRTUAL_BIND("_from_send_array", "arr"); ClassDB::bind_method(D_METHOD("to_send_array"), &AuraData::to_send_array); ClassDB::bind_method(D_METHOD("from_send_array", "arr"), &AuraData::from_send_array); diff --git a/entities/auras/aura_data.h b/entities/auras/aura_data.h index 16d9543..20fd5f8 100644 --- a/entities/auras/aura_data.h +++ b/entities/auras/aura_data.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/variant/array.h" #include "core/variant/dictionary.h" -#else -#include "core/resource.h" -#include "core/array.h" -#include "core/dictionary.h" -#endif + #include "../../spell_enums.h" diff --git a/entities/data/character_spec.h b/entities/data/character_spec.h index 43a359e..089217f 100644 --- a/entities/data/character_spec.h +++ b/entities/data/character_spec.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" #include "core/string/ustring.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#include "core/ustring.h" -#endif + class Spell; diff --git a/entities/data/entity_class_data.cpp b/entities/data/entity_class_data.cpp index 4e70b81..682d8e6 100644 --- a/entities/data/entity_class_data.cpp +++ b/entities/data/entity_class_data.cpp @@ -378,7 +378,7 @@ EntityClassData::~EntityClassData() { } void EntityClassData::_bind_methods() { - D_METHOD("_setup_resources", "entity", "Entity"); + GDVIRTUAL_BIND("_setup_resources", "entity", "Entity"); ClassDB::bind_method(D_METHOD("get_id"), &EntityClassData::get_id); ClassDB::bind_method(D_METHOD("set_id", "value"), &EntityClassData::set_id); @@ -498,7 +498,7 @@ void EntityClassData::_bind_methods() { ClassDB::bind_method(D_METHOD("set_ais", "auras"), &EntityClassData::set_ais); ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "ais", PROPERTY_HINT_NONE, "17/17:EntityAI", PROPERTY_USAGE_DEFAULT, "EntityAI"), "set_ais", "get_ais"); - D_METHOD("_get_ai_instance"); + GDVIRTUAL_BIND("_get_ai_instance"); ClassDB::bind_method(D_METHOD("get_ai_instance"), &EntityClassData::get_ai_instance); ClassDB::bind_method(D_METHOD("_get_ai_instance"), &EntityClassData::_get_ai_instance); diff --git a/entities/data/entity_class_data.h b/entities/data/entity_class_data.h index 9061b1f..3ce35ea 100644 --- a/entities/data/entity_class_data.h +++ b/entities/data/entity_class_data.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" #include "core/string/ustring.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#include "core/ustring.h" -#endif + #include "core/math/math_funcs.h" #include "scene/resources/texture.h" diff --git a/entities/data/entity_data.cpp b/entities/data/entity_data.cpp index d8ff1eb..0ad3342 100644 --- a/entities/data/entity_data.cpp +++ b/entities/data/entity_data.cpp @@ -265,8 +265,8 @@ void EntityData::_validate_property(PropertyInfo &property) const { void EntityData::_bind_methods() { //Interactions - D_METHOD("_cans_interact", "entity", "Entity"); - D_METHOD("_sinteract", "entity", "Entity"); + GDVIRTUAL_BIND("_cans_interact", "entity", "Entity"); + GDVIRTUAL_BIND("_sinteract", "entity", "Entity"); ClassDB::bind_method(D_METHOD("cans_interact", "entity"), &EntityData::cans_interact_bind); ClassDB::bind_method(D_METHOD("sinteract", "entity"), &EntityData::sinteract_bind); @@ -314,7 +314,7 @@ void EntityData::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "species_instance", PROPERTY_HINT_RESOURCE_TYPE, "SpeciesInstance"), "set_species_instance", "get_species_instance"); //AI - D_METHOD("_get_ai_instance"); + GDVIRTUAL_BIND("_get_ai_instance"); ClassDB::bind_method(D_METHOD("get_ai"), &EntityData::get_ai); ClassDB::bind_method(D_METHOD("set_ai", "value"), &EntityData::set_ai); @@ -329,7 +329,7 @@ void EntityData::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "loot_db", PROPERTY_HINT_RESOURCE_TYPE, "LootDataBase"), "set_loot_db", "get_loot_db"); ClassDB::bind_method(D_METHOD("generate_name"), &EntityData::generate_name); - D_METHOD("_generate_name"); + GDVIRTUAL_BIND("_generate_name"); ADD_GROUP("Immunities", "immunity"); ClassDB::bind_method(D_METHOD("get_immunity_flags"), &EntityData::get_immunity_flags); diff --git a/entities/data/entity_data.h b/entities/data/entity_data.h index 11fa316..d4e6647 100644 --- a/entities/data/entity_data.h +++ b/entities/data/entity_data.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" #include "core/string/ustring.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#include "core/ustring.h" -#endif + #include "scene/resources/texture.h" diff --git a/entities/data/entity_data_container.cpp b/entities/data/entity_data_container.cpp index ef6556b..5ebf6d2 100644 --- a/entities/data/entity_data_container.cpp +++ b/entities/data/entity_data_container.cpp @@ -39,11 +39,8 @@ Dictionary EntityDataContainer::_to_dict() { return dict; } void EntityDataContainer::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + } EntityDataContainer::EntityDataContainer() { @@ -53,8 +50,8 @@ EntityDataContainer::~EntityDataContainer() { void EntityDataContainer::_bind_methods() { //Serialization - D_METHOD("from_dict", "dict"); - D_METHOD("to_dict", "dict"); + GDVIRTUAL_BIND("from_dict", "dict"); + GDVIRTUAL_BIND("to_dict", "dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &EntityDataContainer::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &EntityDataContainer::to_dict); diff --git a/entities/data/entity_data_container.h b/entities/data/entity_data_container.h index efb0b85..d367e5f 100644 --- a/entities/data/entity_data_container.h +++ b/entities/data/entity_data_container.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/variant/dictionary.h" -#else -#include "core/resource.h" -#include "core/dictionary.h" -#endif + class EntityDataContainer : public Resource { GDCLASS(EntityDataContainer, Resource); diff --git a/entities/data/item_container_data.h b/entities/data/item_container_data.h index 1597954..b88b14e 100644 --- a/entities/data/item_container_data.h +++ b/entities/data/item_container_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "item_container_data_entry.h" diff --git a/entities/data/item_container_data_entry.h b/entities/data/item_container_data_entry.h index 2dd8dd8..e65bf16 100644 --- a/entities/data/item_container_data_entry.h +++ b/entities/data/item_container_data_entry.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class ItemTemplate; diff --git a/entities/data/vendor_item_data.h b/entities/data/vendor_item_data.h index c0dd9de..924e74c 100644 --- a/entities/data/vendor_item_data.h +++ b/entities/data/vendor_item_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "vendor_item_data_entry.h" diff --git a/entities/data/vendor_item_data_entry.h b/entities/data/vendor_item_data_entry.h index 51b0f67..7952e79 100644 --- a/entities/data/vendor_item_data_entry.h +++ b/entities/data/vendor_item_data_entry.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class ItemTemplate; class Spell; diff --git a/entities/entity.cpp b/entities/entity.cpp index 8b4758e..0036b2e 100644 --- a/entities/entity.cpp +++ b/entities/entity.cpp @@ -43,11 +43,8 @@ SOFTWARE. #include "./skills/entity_skill.h" #include "scene/2d/node_2d.h" -#if VERSION_MAJOR > 3 #include "core/object/script_language.h" -#else -#include "core/script_language.h" -#endif + #include "core/version.h" @@ -650,11 +647,8 @@ void Entity::setup(Ref info) { sets_entity_name(info->get_entity_name()); } -#if VERSION_MAJOR > 3 if (!info->get_serialized_data().is_empty()) { -#else - if (!info->get_serialized_data().empty()) { -#endif + from_dict(info->get_serialized_data()); } else { sets_entity_data(info->get_entity_data()); @@ -1359,11 +1353,8 @@ Dictionary Entity::_to_dict() { return dict; } void Entity::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + //// Transforms //// @@ -1658,11 +1649,8 @@ void Entity::_from_dict(const Dictionary &dict) { Dictionary bagd = dict.get("bag", Dictionary()); -#if VERSION_MAJOR > 3 if (!bagd.is_empty()) { -#else - if (!bagd.empty()) { -#endif + if (!_s_bag.is_valid()) { Ref bag; bag.instantiate(); @@ -6781,8 +6769,8 @@ void Entity::_bind_methods() { ADD_SIGNAL(MethodInfo("onc_open_winow_request", PropertyInfo(Variant::INT, "window_id"))); //setup - D_METHOD("_setup"); - D_METHOD("_initialize"); + GDVIRTUAL_BIND("_setup"); + GDVIRTUAL_BIND("_initialize"); ClassDB::bind_method(D_METHOD("_initialize"), &Entity::_initialize); ClassDB::bind_method(D_METHOD("setup", "info"), &Entity::setup); @@ -6829,19 +6817,19 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("notification_cstat_changed", "stat"), &Entity::notification_cstat_changed); //EventHandlers - D_METHOD("_notification_sdeath"); + GDVIRTUAL_BIND("_notification_sdeath"); - D_METHOD("_notification_sgcd_started", "gcd"); - D_METHOD("_notification_sgcd_finished"); + GDVIRTUAL_BIND("_notification_sgcd_started", "gcd"); + GDVIRTUAL_BIND("_notification_sgcd_finished"); - D_METHOD("_notification_sxp_gained", "value"); - D_METHOD("_notification_slevel_up", "value"); + GDVIRTUAL_BIND("_notification_sxp_gained", "value"); + GDVIRTUAL_BIND("_notification_slevel_up", "value"); - D_METHOD("_notification_sentity_resource_added", "resource", "EntityResource"); - D_METHOD("_notification_sentity_resource_removed", "resource", "EntityResource"); + GDVIRTUAL_BIND("_notification_sentity_resource_added", "resource", "EntityResource"); + GDVIRTUAL_BIND("_notification_sentity_resource_removed", "resource", "EntityResource"); - D_METHOD("_son_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); - D_METHOD("_con_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); + GDVIRTUAL_BIND("_son_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); + GDVIRTUAL_BIND("_con_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); //Serverside ADD_SIGNAL(MethodInfo("notification_sdamage", PropertyInfo(Variant::INT, "what"), PropertyInfo(Variant::OBJECT, "info", PROPERTY_HINT_RESOURCE_TYPE, "SpellDamageInfo"))); @@ -6849,10 +6837,10 @@ void Entity::_bind_methods() { ADD_SIGNAL(MethodInfo("notification_scast", PropertyInfo(Variant::INT, "what"), PropertyInfo(Variant::OBJECT, "spell_cast_info", PROPERTY_HINT_RESOURCE_TYPE, "SpellCastInfo"))); ADD_SIGNAL(MethodInfo("notification_saura", PropertyInfo(Variant::INT, "what"), PropertyInfo(Variant::OBJECT, "aura_data", PROPERTY_HINT_RESOURCE_TYPE, "AuraData"))); - D_METHOD("_notification_saura", "what", "data", "AuraData"); - D_METHOD("_notification_sheal", "what", "info", "SpellHealInfo"); - D_METHOD("_notification_scast", "what", "info", "SpellCastInfo"); - D_METHOD("_notification_sdamage", "what", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_notification_saura", "what", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_sheal", "what", "info", "SpellHealInfo"); + GDVIRTUAL_BIND("_notification_scast", "what", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_notification_sdamage", "what", "info", "SpellDamageInfo"); ClassDB::bind_method(D_METHOD("notification_saura", "what", "data"), &Entity::notification_saura); ClassDB::bind_method(D_METHOD("notification_sheal", "what", "info"), &Entity::notification_sheal); @@ -6865,10 +6853,10 @@ void Entity::_bind_methods() { ADD_SIGNAL(MethodInfo("notification_ccast", PropertyInfo(Variant::INT, "what"), PropertyInfo(Variant::OBJECT, "spell_cast_info", PROPERTY_HINT_RESOURCE_TYPE, "SpellCastInfo"))); ADD_SIGNAL(MethodInfo("notification_caura", PropertyInfo(Variant::INT, "what"), PropertyInfo(Variant::OBJECT, "aura_data", PROPERTY_HINT_RESOURCE_TYPE, "AuraData"))); - D_METHOD("_notification_caura", "what", "data", "AuraData"); - D_METHOD("_notification_cheal", "what", "info", "SpellHealInfo"); - D_METHOD("_notification_ccast", "what", "info", "SpellCastInfo"); - D_METHOD("_notification_cdamage", "what", "info", "SpellDamageInfo"); + GDVIRTUAL_BIND("_notification_caura", "what", "data", "AuraData"); + GDVIRTUAL_BIND("_notification_cheal", "what", "info", "SpellHealInfo"); + GDVIRTUAL_BIND("_notification_ccast", "what", "info", "SpellCastInfo"); + GDVIRTUAL_BIND("_notification_cdamage", "what", "info", "SpellDamageInfo"); ClassDB::bind_method(D_METHOD("notification_caura", "what", "data"), &Entity::notification_caura); ClassDB::bind_method(D_METHOD("notification_cheal", "what", "info"), &Entity::notification_cheal); @@ -6893,8 +6881,8 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("setc_free_class_talent_points", "value"), &Entity::setc_free_class_talent_points); ADD_PROPERTY(PropertyInfo(Variant::INT, "cfree_class_talent_points", PROPERTY_HINT_NONE, "", 0), "setc_free_class_talent_points", "getc_free_class_talent_points"); - D_METHOD("_class_talent_sreceive_learn_request", "spec_index", "class_talent_row", "class_talent_culomn"); - D_METHOD("_class_talent_sreceive_reset_request"); + GDVIRTUAL_BIND("_class_talent_sreceive_learn_request", "spec_index", "class_talent_row", "class_talent_culomn"); + GDVIRTUAL_BIND("_class_talent_sreceive_reset_request"); ADD_SIGNAL(MethodInfo("sclass_talent_learned", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "class_talent_id"))); ADD_SIGNAL(MethodInfo("cclass_talent_learned", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "class_talent_id"))); @@ -6902,11 +6890,11 @@ void Entity::_bind_methods() { ADD_SIGNAL(MethodInfo("sclass_talent_reset", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"))); ADD_SIGNAL(MethodInfo("cclass_talent_reset", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"))); - D_METHOD("_son_class_talent_learned", "class_talent_id"); - D_METHOD("_con_class_talent_learned", "class_talent_id"); + GDVIRTUAL_BIND("_son_class_talent_learned", "class_talent_id"); + GDVIRTUAL_BIND("_con_class_talent_learned", "class_talent_id"); - D_METHOD("_son_class_talent_reset"); - D_METHOD("_con_class_talent_reset"); + GDVIRTUAL_BIND("_son_class_talent_reset"); + GDVIRTUAL_BIND("_con_class_talent_reset"); ClassDB::bind_method(D_METHOD("class_talent_crequest_learn", "spec_index", "class_talent_row", "class_talent_culomn"), &Entity::class_talent_crequest_learn); ClassDB::bind_method(D_METHOD("class_talent_sreceive_learn_request", "spec_index", "class_talent_row", "class_talent_culomn"), &Entity::class_talent_sreceive_learn_request); @@ -6947,8 +6935,8 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("setc_free_character_talent_points", "value"), &Entity::setc_free_character_talent_points); ADD_PROPERTY(PropertyInfo(Variant::INT, "cfree_character_talent_points", PROPERTY_HINT_NONE, "", 0), "setc_free_character_talent_points", "getc_free_character_talent_points"); - D_METHOD("_character_talent_sreceive_learn_request", "spec_index", "character_talent_row", "character_talent_culomn"); - D_METHOD("_character_talent_sreceive_reset_request"); + GDVIRTUAL_BIND("_character_talent_sreceive_learn_request", "spec_index", "character_talent_row", "character_talent_culomn"); + GDVIRTUAL_BIND("_character_talent_sreceive_reset_request"); ADD_SIGNAL(MethodInfo("scharacter_talent_learned", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "character_talent_id"))); ADD_SIGNAL(MethodInfo("ccharacter_talent_learned", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "character_talent_id"))); @@ -6956,11 +6944,11 @@ void Entity::_bind_methods() { ADD_SIGNAL(MethodInfo("scharacter_talent_reset", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"))); ADD_SIGNAL(MethodInfo("ccharacter_talent_reset", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"))); - D_METHOD("_son_character_talent_learned", "character_talent_id"); - D_METHOD("_con_character_talent_learned", "character_talent_id"); + GDVIRTUAL_BIND("_son_character_talent_learned", "character_talent_id"); + GDVIRTUAL_BIND("_con_character_talent_learned", "character_talent_id"); - D_METHOD("_son_character_talent_reset"); - D_METHOD("_con_character_talent_reset"); + GDVIRTUAL_BIND("_son_character_talent_reset"); + GDVIRTUAL_BIND("_con_character_talent_reset"); ClassDB::bind_method(D_METHOD("character_talent_crequest_learn", "spec_index", "character_talent_row", "character_talent_culomn"), &Entity::character_talent_crequest_learn); ClassDB::bind_method(D_METHOD("character_talent_sreceive_learn_request", "spec_index", "character_talent_row", "character_talent_culomn"), &Entity::character_talent_sreceive_learn_request); @@ -6992,10 +6980,10 @@ void Entity::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::POOL_INT_ARRAY, "scharacter_talents", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_ENTITY_HIDDEN), "scharacter_talents_set", "scharacter_talents_get"); //Cooldowns - D_METHOD("notification_scooldown_added", "id", "value"); - D_METHOD("notification_scooldown_removed", "id", "value"); - D_METHOD("notification_scategory_cooldown_added", "id", "value"); - D_METHOD("notification_scategory_cooldown_removed", "id", "value"); + GDVIRTUAL_BIND("notification_scooldown_added", "id", "value"); + GDVIRTUAL_BIND("notification_scooldown_removed", "id", "value"); + GDVIRTUAL_BIND("notification_scategory_cooldown_added", "id", "value"); + GDVIRTUAL_BIND("notification_scategory_cooldown_removed", "id", "value"); ClassDB::bind_method(D_METHOD("notification_scooldown_added", "cooldown"), &Entity::notification_scooldown_added); ClassDB::bind_method(D_METHOD("notification_scooldown_removed", "cooldown"), &Entity::notification_scooldown_removed); @@ -7003,30 +6991,30 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("notification_scategory_cooldown_removed", "category_cooldown"), &Entity::notification_scategory_cooldown_removed); //Clientside EventHandlers - D_METHOD("_notification_cdeath"); + GDVIRTUAL_BIND("_notification_cdeath"); - D_METHOD("notification_ccooldown_added", "id", "value"); - D_METHOD("notification_ccooldown_removed", "id", "value"); - D_METHOD("notification_ccategory_cooldown_added", "id", "value"); - D_METHOD("notification_ccategory_cooldown_removed", "id", "value"); + GDVIRTUAL_BIND("notification_ccooldown_added", "id", "value"); + GDVIRTUAL_BIND("notification_ccooldown_removed", "id", "value"); + GDVIRTUAL_BIND("notification_ccategory_cooldown_added", "id", "value"); + GDVIRTUAL_BIND("notification_ccategory_cooldown_removed", "id", "value"); ClassDB::bind_method(D_METHOD("notification_ccooldown_added", "cooldown"), &Entity::notification_ccooldown_added); ClassDB::bind_method(D_METHOD("notification_ccooldown_removed", "cooldown"), &Entity::notification_ccooldown_removed); ClassDB::bind_method(D_METHOD("notification_ccategory_cooldown_added", "category_cooldown"), &Entity::notification_ccategory_cooldown_added); ClassDB::bind_method(D_METHOD("notification_ccategory_cooldown_removed", "category_cooldown"), &Entity::notification_ccategory_cooldown_removed); - D_METHOD("_notification_cgcd_started", "gcd"); - D_METHOD("_notification_cgcd_finished"); + GDVIRTUAL_BIND("_notification_cgcd_started", "gcd"); + GDVIRTUAL_BIND("_notification_cgcd_finished"); - D_METHOD("_notification_cxp_gained", "value"); - D_METHOD("_notification_clevel_up", "value"); + GDVIRTUAL_BIND("_notification_cxp_gained", "value"); + GDVIRTUAL_BIND("_notification_clevel_up", "value"); - D_METHOD("_notification_centity_resource_added", "resource", "EntityResource"); - D_METHOD("_notification_centity_resource_removed", "resource", "EntityResource"); + GDVIRTUAL_BIND("_notification_centity_resource_added", "resource", "EntityResource"); + GDVIRTUAL_BIND("_notification_centity_resource_removed", "resource", "EntityResource"); - D_METHOD("_canc_interact"); - D_METHOD("_cans_interact"); - D_METHOD("_sinteract"); + GDVIRTUAL_BIND("_canc_interact"); + GDVIRTUAL_BIND("_cans_interact"); + GDVIRTUAL_BIND("_sinteract"); ClassDB::bind_method(D_METHOD("cast_spell_successc", "info"), &Entity::cast_spell_successc); ClassDB::bind_method(D_METHOD("cast_spell_successc_rpc", "data"), &Entity::cast_spell_successc_rpc); @@ -7050,7 +7038,7 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("spell_casts", "spell_id"), &Entity::spell_casts); ClassDB::bind_method(D_METHOD("spell_crequest_cast", "spell_id"), &Entity::spell_crequest_cast); - D_METHOD("_item_uses", "item_id"); + GDVIRTUAL_BIND("_item_uses", "item_id"); ClassDB::bind_method(D_METHOD("item_uses", "item_id"), &Entity::item_uses); ClassDB::bind_method(D_METHOD("item_crequest_use", "item_id"), &Entity::item_crequest_use); @@ -7080,8 +7068,8 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("ssend_open_window", "window_id"), &Entity::ssend_open_window); ClassDB::bind_method(D_METHOD("copen_window", "window_id"), &Entity::copen_window); - D_METHOD("_iss_target_in_interact_range"); - D_METHOD("_isc_target_in_interact_range"); + GDVIRTUAL_BIND("_iss_target_in_interact_range"); + GDVIRTUAL_BIND("_isc_target_in_interact_range"); ClassDB::bind_method(D_METHOD("iss_target_in_interact_range"), &Entity::iss_target_in_interact_range); ClassDB::bind_method(D_METHOD("isc_target_in_interact_range"), &Entity::isc_target_in_interact_range); @@ -7143,14 +7131,14 @@ void Entity::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "sauras", PROPERTY_HINT_NONE, "17/17:AuraData", PROPERTY_USAGE_ENTITY_HIDDEN, "AuraData"), "sauras_set", "sauras_get"); //Hooks - D_METHOD("_moved"); + GDVIRTUAL_BIND("_moved"); ClassDB::bind_method(D_METHOD("moved"), &Entity::moved); ADD_SIGNAL(MethodInfo("notification_cmouse_entered")); ADD_SIGNAL(MethodInfo("notification_cmouse_exited")); - D_METHOD("_notification_cmouse_enter"); - D_METHOD("_notification_cmouse_exit"); + GDVIRTUAL_BIND("_notification_cmouse_enter"); + GDVIRTUAL_BIND("_notification_cmouse_exit"); ClassDB::bind_method(D_METHOD("notification_cmouse_enter"), &Entity::notification_cmouse_enter); ClassDB::bind_method(D_METHOD("notification_cmouse_exit"), &Entity::notification_cmouse_exit); @@ -7158,8 +7146,8 @@ void Entity::_bind_methods() { ADD_SIGNAL(MethodInfo("notification_ctargeted")); ADD_SIGNAL(MethodInfo("notification_cuntargeted")); - D_METHOD("_notification_ctargeted"); - D_METHOD("_notification_cuntargeted"); + GDVIRTUAL_BIND("_notification_ctargeted"); + GDVIRTUAL_BIND("_notification_cuntargeted"); ClassDB::bind_method(D_METHOD("notification_ctargeted"), &Entity::notification_ctargeted); ClassDB::bind_method(D_METHOD("notification_cuntargeted"), &Entity::notification_cuntargeted); @@ -7218,8 +7206,8 @@ void Entity::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::INT, "cseed", PROPERTY_HINT_NONE, "", 0), "setc_seed", "getc_seed"); //Interaction type - D_METHOD("_gets_relation_to", "to", "Entity"); - D_METHOD("_getc_relation_to", "to", "Entity"); + GDVIRTUAL_BIND("_gets_relation_to", "to", "Entity"); + GDVIRTUAL_BIND("_getc_relation_to", "to", "Entity"); ClassDB::bind_method(D_METHOD("gets_relation_to", "to"), &Entity::gets_relation_to_bind); ClassDB::bind_method(D_METHOD("_gets_relation_to", "to"), &Entity::_gets_relation_to); @@ -7307,12 +7295,12 @@ void Entity::_bind_methods() { ADD_SIGNAL(MethodInfo("equip_con_success", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot"), PropertyInfo(Variant::OBJECT, "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"), PropertyInfo(Variant::OBJECT, "old_item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"), PropertyInfo(Variant::INT, "bag_slot"))); ADD_SIGNAL(MethodInfo("equip_con_fail", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::INT, "equip_slot"), PropertyInfo(Variant::OBJECT, "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"), PropertyInfo(Variant::OBJECT, "old_item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"), PropertyInfo(Variant::INT, "bag_slot"))); - D_METHOD("_equip_should_deny", "equip_slot", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_should_deny", "equip_slot", "item", "ItemInstance"); - D_METHOD("_equip_son_success", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_son_fail", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_con_success", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); - D_METHOD("_equip_con_fail", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_son_success", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_son_fail", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_con_success", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); + GDVIRTUAL_BIND("_equip_con_fail", PropertyInfo(Variant::INT, "equip_slot", "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance", "old_item", "ItemInstance", "bag_slot"); ADD_SIGNAL(MethodInfo("equipment_changed", PropertyInfo(Variant::INT, "slot"))); @@ -7323,7 +7311,7 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("equip_con_success", "equip_slot", "item", "old_item", "bag_slot"), &Entity::equip_con_success); ClassDB::bind_method(D_METHOD("equip_con_fail", "equip_slot", "item", "old_item", "bag_slot"), &Entity::equip_con_fail); - D_METHOD("_equips", "equip_slot", "bag_slot"); + GDVIRTUAL_BIND("_equips", "equip_slot", "bag_slot"); ClassDB::bind_method(D_METHOD("equip_crequest", "equip_slot", "bag_slot"), &Entity::equip_crequest); ClassDB::bind_method(D_METHOD("equips", "equip_slot", "bag_slot"), &Entity::equips); @@ -7335,13 +7323,13 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("equip_gets_slot", "index"), &Entity::equip_gets_slot); ClassDB::bind_method(D_METHOD("equip_getc_slot", "index"), &Entity::equip_getc_slot); - D_METHOD("_equip_can_equip_item", "equip_slot", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_can_equip_item", "equip_slot", "item", "ItemInstance"); ClassDB::bind_method(D_METHOD("equip_can_equip_item", "equip_slot", "item"), &Entity::equip_can_equip_item); ClassDB::bind_method(D_METHOD("_equip_can_equip_item", "equip_slot", "item"), &Entity::_equip_can_equip_item); - D_METHOD("_equip_applys_item", "item", "ItemInstance"); - D_METHOD("_equip_deapplys_item", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_applys_item", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_deapplys_item", "item", "ItemInstance"); ClassDB::bind_method(D_METHOD("equip_applys_item", "item"), &Entity::equip_applys_item); ClassDB::bind_method(D_METHOD("equip_deapplys_item", "item"), &Entity::equip_deapplys_item); @@ -7349,8 +7337,8 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("_equip_applys_item", "item"), &Entity::_equip_applys_item); ClassDB::bind_method(D_METHOD("_equip_deapplys_item", "item"), &Entity::_equip_deapplys_item); - D_METHOD("_equip_applyc_item", "item", "ItemInstance"); - D_METHOD("_equip_deapplyc_item", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_applyc_item", "item", "ItemInstance"); + GDVIRTUAL_BIND("_equip_deapplyc_item", "item", "ItemInstance"); ClassDB::bind_method(D_METHOD("cequip_applys_item", "item"), &Entity::equip_applyc_item); ClassDB::bind_method(D_METHOD("equip_deapplyc_item", "item"), &Entity::equip_deapplyc_item); @@ -7564,7 +7552,7 @@ void Entity::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "sspells", PROPERTY_HINT_NONE, "17/17:Spell", PROPERTY_USAGE_ENTITY_HIDDEN, "Spell"), "sspells_set", "sspells_get"); //Crafting - D_METHOD("_crafts", "id"); + GDVIRTUAL_BIND("_crafts", "id"); ADD_SIGNAL(MethodInfo("crafts_success", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::OBJECT, "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"))); ADD_SIGNAL(MethodInfo("ccraft_success", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::OBJECT, "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"))); @@ -7633,7 +7621,7 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("instance_body"), &Entity::instance_body); ClassDB::bind_method(D_METHOD("on_body_changed"), &Entity::on_body_changed); - D_METHOD("_body_changed"); + GDVIRTUAL_BIND("_body_changed"); ADD_SIGNAL(MethodInfo("body_changed", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"))); //Transforms @@ -7737,8 +7725,8 @@ void Entity::_bind_methods() { ClassDB::bind_method(D_METHOD("vendor_item_sell_crequest", "slot_id"), &Entity::vendor_item_sell_crequest); ClassDB::bind_method(D_METHOD("vendor_item_ssell", "slot_id"), &Entity::vendor_item_ssell); - D_METHOD("_vendor_item_sbuy", "index", "count"); - D_METHOD("_vendor_item_ssell", "slot_id"); + GDVIRTUAL_BIND("_vendor_item_sbuy", "index", "count"); + GDVIRTUAL_BIND("_vendor_item_ssell", "slot_id"); ClassDB::bind_method(D_METHOD("_vendor_item_sbuy", "index", "count"), &Entity::_vendor_item_sbuy); ClassDB::bind_method(D_METHOD("_vendor_item_ssell", "slot_id"), &Entity::_vendor_item_ssell); @@ -7812,8 +7800,8 @@ void Entity::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "sai", PROPERTY_HINT_RESOURCE_TYPE, "EntityAI", PROPERTY_USAGE_ENTITY_HIDDEN), "sets_ai", "gets_ai"); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict"); ClassDB::bind_method(D_METHOD("is_deserialized"), &Entity::is_deserialized); diff --git a/entities/entity.h b/entities/entity.h index dabbc58..f53925d 100644 --- a/entities/entity.h +++ b/entities/entity.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/object.h" #include "core/string/ustring.h" #include "core/templates/vector.h" -#else -#include "core/object.h" -#include "core/ustring.h" -#include "core/vector.h" -#endif + #include "scene/main/multiplayer_peer.h" diff --git a/entities/resources/entity_resource.cpp b/entities/resources/entity_resource.cpp index 39d920d..a426036 100644 --- a/entities/resources/entity_resource.cpp +++ b/entities/resources/entity_resource.cpp @@ -286,11 +286,8 @@ Dictionary EntityResource::_to_dict() { return dict; } void EntityResource::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _dirty = dict.get("dirty", false); _should_process = dict.get("should_process", false); @@ -435,25 +432,25 @@ void EntityResource::_bind_methods() { ClassDB::bind_method(D_METHOD("mods_changed"), &EntityResource::mods_changed); - D_METHOD("_notification_sstat_changed", "statid", "curent"); - D_METHOD("_notification_cstat_changed", "statid", "curent"); + GDVIRTUAL_BIND("_notification_sstat_changed", "statid", "curent"); + GDVIRTUAL_BIND("_notification_cstat_changed", "statid", "curent"); - D_METHOD("_ons_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); - D_METHOD("_onc_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); + GDVIRTUAL_BIND("_ons_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); + GDVIRTUAL_BIND("_onc_target_changed", "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity", "old_target", "Entity"); - D_METHOD("_ons_added", "entity", "Entity"); - D_METHOD("_onc_added", "entity", "Entity"); + GDVIRTUAL_BIND("_ons_added", "entity", "Entity"); + GDVIRTUAL_BIND("_onc_added", "entity", "Entity"); - D_METHOD("_process_server", "delta"); - D_METHOD("_process_client", "delta"); + GDVIRTUAL_BIND("_process_server", "delta"); + GDVIRTUAL_BIND("_process_client", "delta"); - D_METHOD("_stacking_mod_added", "value"); - D_METHOD("_stacking_mod_removed", "value"); + GDVIRTUAL_BIND("_stacking_mod_added", "value"); + GDVIRTUAL_BIND("_stacking_mod_removed", "value"); - D_METHOD("_non_stacking_mod_added", "value"); - D_METHOD("_non_stacking_mod_removed", "value"); + GDVIRTUAL_BIND("_non_stacking_mod_added", "value"); + GDVIRTUAL_BIND("_non_stacking_mod_removed", "value"); - D_METHOD("_mods_changed"); + GDVIRTUAL_BIND("_mods_changed"); ClassDB::bind_method(D_METHOD("process_server", "delta"), &EntityResource::process_server); ClassDB::bind_method(D_METHOD("_process_server", "delta"), &EntityResource::_process_server); @@ -461,12 +458,12 @@ void EntityResource::_bind_methods() { ClassDB::bind_method(D_METHOD("process_client", "delta"), &EntityResource::process_client); ClassDB::bind_method(D_METHOD("_process_client", "delta"), &EntityResource::_process_client); - D_METHOD("_gets_update_string"); - D_METHOD("_receivec_update_string", "str"); + GDVIRTUAL_BIND("_gets_update_string"); + GDVIRTUAL_BIND("_receivec_update_string", "str"); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &EntityResource::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &EntityResource::to_dict); diff --git a/entities/resources/entity_resource.h b/entities/resources/entity_resource.h index e39f4f7..7fa9606 100644 --- a/entities/resources/entity_resource.h +++ b/entities/resources/entity_resource.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "../../defines.h" diff --git a/entities/resources/entity_resource_cost_data.h b/entities/resources/entity_resource_cost_data.h index 55fafc2..56882e3 100644 --- a/entities/resources/entity_resource_cost_data.h +++ b/entities/resources/entity_resource_cost_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "entity_resource.h" #include "entity_resource_cost_data.h" diff --git a/entities/resources/entity_resource_cost_data_health.h b/entities/resources/entity_resource_cost_data_health.h index 2c66758..3e4b809 100644 --- a/entities/resources/entity_resource_cost_data_health.h +++ b/entities/resources/entity_resource_cost_data_health.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "entity_resource.h" #include "entity_resource_cost_data.h" diff --git a/entities/resources/entity_resource_cost_data_resource.h b/entities/resources/entity_resource_cost_data_resource.h index 7f207ab..a802e8e 100644 --- a/entities/resources/entity_resource_cost_data_resource.h +++ b/entities/resources/entity_resource_cost_data_resource.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "entity_resource.h" #include "entity_resource_cost_data.h" diff --git a/entities/skills/entity_skill.cpp b/entities/skills/entity_skill.cpp index c52ebab..d222f87 100644 --- a/entities/skills/entity_skill.cpp +++ b/entities/skills/entity_skill.cpp @@ -103,11 +103,8 @@ Dictionary EntitySkill::_to_dict() { return dict; } void EntitySkill::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _skill_id = dict.get("skill_id", 0); _skill_path = dict.get("skill_path", ""); @@ -153,8 +150,8 @@ void EntitySkill::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::BOOL, "disabled"), "set_disabled", "get_disabled"); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &EntitySkill::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &EntitySkill::to_dict); diff --git a/entities/skills/entity_skill.h b/entities/skills/entity_skill.h index ed4108e..4c0ba7e 100644 --- a/entities/skills/entity_skill.h +++ b/entities/skills/entity_skill.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "entity_skill_data.h" diff --git a/entities/skills/entity_skill_data.h b/entities/skills/entity_skill_data.h index d1a8e57..d8b6e4c 100644 --- a/entities/skills/entity_skill_data.h +++ b/entities/skills/entity_skill_data.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/string/ustring.h" -#else -#include "core/resource.h" -#include "core/ustring.h" -#endif + class EntitySkillData : public Resource { GDCLASS(EntitySkillData, Resource); diff --git a/entities/stats/complex_level_stat_data.h b/entities/stats/complex_level_stat_data.h index 7395fab..4a050fe 100644 --- a/entities/stats/complex_level_stat_data.h +++ b/entities/stats/complex_level_stat_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "../../entity_enums.h" #include "level_stat_data.h" diff --git a/entities/stats/level_stat_data.cpp b/entities/stats/level_stat_data.cpp index 514ecca..4d81ac1 100644 --- a/entities/stats/level_stat_data.cpp +++ b/entities/stats/level_stat_data.cpp @@ -31,7 +31,7 @@ int LevelStatData::get_stat_diff(int main_stat, int old_level, int new_level) { void LevelStatData::_bind_methods() { - D_METHOD("_get_stat_diff", "main_stat", "old_level", "new_level"); + GDVIRTUAL_BIND("_get_stat_diff", "main_stat", "old_level", "new_level"); ClassDB::bind_method(D_METHOD("get_stat_diff", "stat", "old_level", "new_level"), &LevelStatData::get_stat_diff); } diff --git a/entities/stats/level_stat_data.h b/entities/stats/level_stat_data.h index d94bd08..9aaeffe 100644 --- a/entities/stats/level_stat_data.h +++ b/entities/stats/level_stat_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class LevelStatData : public Resource { GDCLASS(LevelStatData, Resource); diff --git a/entities/stats/simple_level_stat_data.h b/entities/stats/simple_level_stat_data.h index a8eae5e..f0cd462 100644 --- a/entities/stats/simple_level_stat_data.h +++ b/entities/stats/simple_level_stat_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "level_stat_data.h" diff --git a/entities/stats/stat_data.h b/entities/stats/stat_data.h index 1ed5561..ebd4f7e 100644 --- a/entities/stats/stat_data.h +++ b/entities/stats/stat_data.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "scene/resources/curve.h" diff --git a/entity_enums.h b/entity_enums.h index 9b4b046..28b5358 100644 --- a/entity_enums.h +++ b/entity_enums.h @@ -24,15 +24,10 @@ SOFTWARE. #define ENTITY_ENUMS_H #include "core/version.h" - -#if VERSION_MAJOR > 3 #include "core/object/object.h" #include "core/string/ustring.h" #include "core/object/class_db.h" -#else -#include "core/object.h" -#include "core/ustring.h" -#endif + class EntityEnums : public Object { GDCLASS(EntityEnums, Object); diff --git a/formations/ai_formation.cpp b/formations/ai_formation.cpp index e9950a6..36bdc2c 100644 --- a/formations/ai_formation.cpp +++ b/formations/ai_formation.cpp @@ -75,8 +75,8 @@ AIFormation::AIFormation() { } void AIFormation::_bind_methods() { - D_METHOD("_on_set_owner"); - D_METHOD("_get_position", "slot_index"); + GDVIRTUAL_BIND("_on_set_owner"); + GDVIRTUAL_BIND("_get_position", "slot_index"); ClassDB::bind_method(D_METHOD("get_owner"), &AIFormation::get_owner); ClassDB::bind_method(D_METHOD("set_owner", "entity"), &AIFormation::set_owner_bind); diff --git a/formations/ai_formation.h b/formations/ai_formation.h index 050c172..4572d55 100644 --- a/formations/ai_formation.h +++ b/formations/ai_formation.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + #include "scene/main/node.h" diff --git a/infos/aura_infos.h b/infos/aura_infos.h index 92b33e9..ea1b68e 100644 --- a/infos/aura_infos.h +++ b/infos/aura_infos.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" -#else -#include "core/reference.h" -#endif + #include "../entities/entity.h" diff --git a/infos/spell_cast_info.cpp b/infos/spell_cast_info.cpp index 4209668..dd43974 100644 --- a/infos/spell_cast_info.cpp +++ b/infos/spell_cast_info.cpp @@ -205,11 +205,8 @@ Dictionary SpellCastInfo::to_dict() { return dict; } void SpellCastInfo::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _has_cast_time = dict.get("has_cast_time", true); _cast_time = dict.get("cast_time", 0); diff --git a/infos/spell_cast_info.h b/infos/spell_cast_info.h index 7987c51..0a43d8c 100644 --- a/infos/spell_cast_info.h +++ b/infos/spell_cast_info.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" -#else -#include "core/resource.h" -#endif + class Spell; class Entity; diff --git a/inventory/bag.cpp b/inventory/bag.cpp index 12b2f76..b440b48 100644 --- a/inventory/bag.cpp +++ b/inventory/bag.cpp @@ -388,21 +388,21 @@ Bag::~Bag() { } void Bag::_bind_methods() { - D_METHOD("_add_item", "item", "ItemInstance"); - D_METHOD("_add_item_at", "index", "item", "ItemInstance", "signal"); - D_METHOD("_get_item", "index"); - D_METHOD("_remove_item", "index"); - D_METHOD("_swap_items", "item1_index", "item2_index"); - D_METHOD("_can_add_item", "item", "ItemInstance"); - D_METHOD("_get_item_count"); - D_METHOD("_get_valid_item_count"); - D_METHOD("_get_size"); - D_METHOD("_set_size", "size"); - D_METHOD("_is_full"); - D_METHOD("_is_overburdened"); - D_METHOD("_has_item", "item", "ItemTemplate", "count"); - D_METHOD("_remove_items", "item", "ItemTemplate", "count"); - D_METHOD("_change_item_equip", "slot_id", "item", "ItemInstance"); + GDVIRTUAL_BIND("_add_item", "item", "ItemInstance"); + GDVIRTUAL_BIND("_add_item_at", "index", "item", "ItemInstance", "signal"); + GDVIRTUAL_BIND("_get_item", "index"); + GDVIRTUAL_BIND("_remove_item", "index"); + GDVIRTUAL_BIND("_swap_items", "item1_index", "item2_index"); + GDVIRTUAL_BIND("_can_add_item", "item", "ItemInstance"); + GDVIRTUAL_BIND("_get_item_count"); + GDVIRTUAL_BIND("_get_valid_item_count"); + GDVIRTUAL_BIND("_get_size"); + GDVIRTUAL_BIND("_set_size", "size"); + GDVIRTUAL_BIND("_is_full"); + GDVIRTUAL_BIND("_is_overburdened"); + GDVIRTUAL_BIND("_has_item", "item", "ItemTemplate", "count"); + GDVIRTUAL_BIND("_remove_items", "item", "ItemTemplate", "count"); + GDVIRTUAL_BIND("_change_item_equip", "slot_id", "item", "ItemInstance"); ADD_SIGNAL(MethodInfo("item_added", PropertyInfo(Variant::OBJECT, "bag", PROPERTY_HINT_RESOURCE_TYPE, "Bag"), PropertyInfo(Variant::OBJECT, "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"), PropertyInfo(Variant::INT, "slot_id"))); ADD_SIGNAL(MethodInfo("item_removed", PropertyInfo(Variant::OBJECT, "bag", PROPERTY_HINT_RESOURCE_TYPE, "Bag"), PropertyInfo(Variant::OBJECT, "item", PROPERTY_HINT_RESOURCE_TYPE, "ItemInstance"), PropertyInfo(Variant::INT, "slot_id"))); @@ -442,8 +442,8 @@ void Bag::_bind_methods() { ClassDB::bind_method(D_METHOD("_remove_items", "item", "count"), &Bag::_remove_items); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &Bag::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &Bag::to_dict); diff --git a/inventory/bag.h b/inventory/bag.h index 8a7052d..1d3d80b 100644 --- a/inventory/bag.h +++ b/inventory/bag.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "../item_enums.h" diff --git a/inventory/grid_bag.h b/inventory/grid_bag.h index 74fd6b6..1ff04a9 100644 --- a/inventory/grid_bag.h +++ b/inventory/grid_bag.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "../item_enums.h" diff --git a/inventory/inventory.h b/inventory/inventory.h index 2e28329..337c0ac 100644 --- a/inventory/inventory.h +++ b/inventory/inventory.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "../item_enums.h" diff --git a/inventory/normal_bag.h b/inventory/normal_bag.h index 2d7e381..a716cd4 100644 --- a/inventory/normal_bag.h +++ b/inventory/normal_bag.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/templates/vector.h" -#else -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "../item_enums.h" diff --git a/item_enums.h b/item_enums.h index f1ab225..ddd71ab 100644 --- a/item_enums.h +++ b/item_enums.h @@ -25,14 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/object.h" #include "core/string/ustring.h" #include "core/object/class_db.h" -#else -#include "core/object.h" -#include "core/ustring.h" -#endif + class ItemEnums : public Object { GDCLASS(ItemEnums, Object); diff --git a/material_cache/ess_material_cache.cpp b/material_cache/ess_material_cache.cpp index 03cc9f0..0b1c0a8 100644 --- a/material_cache/ess_material_cache.cpp +++ b/material_cache/ess_material_cache.cpp @@ -38,7 +38,6 @@ SOFTWARE. #include "../singletons/ess.h" -#if VERSION_MAJOR > 3 #define VARIANT_ARRAY_GET(arr) \ Vector r; \ @@ -47,16 +46,7 @@ SOFTWARE. } \ return r; -#else -#define VARIANT_ARRAY_GET(arr) \ - Vector r; \ - for (int i = 0; i < arr.size(); i++) { \ - r.push_back(arr[i].get_ref_ptr()); \ - } \ - return r; - -#endif bool ESSMaterialCache::get_initialized() { return _initialized; @@ -336,7 +326,7 @@ void ESSMaterialCache::_bind_methods() { ClassDB::bind_method(D_METHOD("inc_ref_count"), &ESSMaterialCache::inc_ref_count); ClassDB::bind_method(D_METHOD("dec_ref_count"), &ESSMaterialCache::dec_ref_count); - D_METHOD("_setup_material_albedo", "texture", "Texture"); + GDVIRTUAL_BIND("_setup_material_albedo", "texture", "Texture"); ClassDB::bind_method(D_METHOD("material_get", "index"), &ESSMaterialCache::material_get); ClassDB::bind_method(D_METHOD("material_lod_get", "index"), &ESSMaterialCache::material_lod_get); diff --git a/material_cache/ess_material_cache.h b/material_cache/ess_material_cache.h index e354695..6275cbd 100644 --- a/material_cache/ess_material_cache.h +++ b/material_cache/ess_material_cache.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/math/color.h" #include "core/templates/vector.h" -#else -#include "core/color.h" -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "core/math/rect2.h" #include "scene/resources/material.h" diff --git a/material_cache/ess_material_cache_pcm.h b/material_cache/ess_material_cache_pcm.h index 8156b9a..e7705ef 100644 --- a/material_cache/ess_material_cache_pcm.h +++ b/material_cache/ess_material_cache_pcm.h @@ -27,15 +27,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/math/color.h" #include "core/templates/vector.h" -#else -#include "core/color.h" -#include "core/resource.h" -#include "core/vector.h" -#endif + #include "core/math/rect2.h" #include "scene/resources/material.h" diff --git a/pipelines/spell_damage_info.cpp b/pipelines/spell_damage_info.cpp index f579f8f..47f1253 100644 --- a/pipelines/spell_damage_info.cpp +++ b/pipelines/spell_damage_info.cpp @@ -201,11 +201,8 @@ Dictionary SpellDamageInfo::to_dict() { return dict; } void SpellDamageInfo::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _immune = dict.get("immune", true); _damage = dict.get("damage", 0); diff --git a/pipelines/spell_damage_info.h b/pipelines/spell_damage_info.h index 2d9dd30..be2e7f7 100644 --- a/pipelines/spell_damage_info.h +++ b/pipelines/spell_damage_info.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" -#else -#include "core/reference.h" -#endif + #include "../spell_enums.h" #include "scene/main/node.h" diff --git a/pipelines/spell_heal_info.cpp b/pipelines/spell_heal_info.cpp index 60e4256..34ee7d6 100644 --- a/pipelines/spell_heal_info.cpp +++ b/pipelines/spell_heal_info.cpp @@ -202,11 +202,8 @@ Dictionary SpellHealInfo::to_dict() { return dict; } void SpellHealInfo::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _immune = dict.get("immune", true); _heal = dict.get("heal", 0); diff --git a/pipelines/spell_heal_info.h b/pipelines/spell_heal_info.h index b2ab6cb..d50f014 100644 --- a/pipelines/spell_heal_info.h +++ b/pipelines/spell_heal_info.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" -#else -#include "core/reference.h" -#endif + #include "../spell_enums.h" #include "scene/main/node.h" diff --git a/profiles/actionbar/action_bar_button_entry.cpp b/profiles/actionbar/action_bar_button_entry.cpp index efd8f41..325051e 100644 --- a/profiles/actionbar/action_bar_button_entry.cpp +++ b/profiles/actionbar/action_bar_button_entry.cpp @@ -93,11 +93,8 @@ Dictionary ActionBarButtonEntry::to_dict() const { return dict; } void ActionBarButtonEntry::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _action_bar_id = dict.get("action_bar_id", 0); _slot_id = dict.get("slot_id", 0); diff --git a/profiles/actionbar/action_bar_button_entry.h b/profiles/actionbar/action_bar_button_entry.h index 952c6a9..593700b 100644 --- a/profiles/actionbar/action_bar_button_entry.h +++ b/profiles/actionbar/action_bar_button_entry.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/variant/dictionary.h" -#else -#include "core/reference.h" -#include "core/dictionary.h" -#endif + class ActionBarEntry; diff --git a/profiles/actionbar/action_bar_entry.cpp b/profiles/actionbar/action_bar_entry.cpp index cf88d78..33e8d9e 100644 --- a/profiles/actionbar/action_bar_entry.cpp +++ b/profiles/actionbar/action_bar_entry.cpp @@ -117,11 +117,8 @@ Dictionary ActionBarEntry::to_dict() const { return dict; } void ActionBarEntry::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + for (int i = 0; i < _button_entries.size(); ++i) { _button_entries.get(i)->set_owner(NULL); diff --git a/profiles/actionbar/action_bar_entry.h b/profiles/actionbar/action_bar_entry.h index a203bb3..74e72fc 100644 --- a/profiles/actionbar/action_bar_entry.h +++ b/profiles/actionbar/action_bar_entry.h @@ -25,17 +25,11 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/templates/vector.h" #include "core/variant/array.h" #include "core/variant/dictionary.h" -#else -#include "core/reference.h" -#include "core/vector.h" -#include "core/array.h" -#include "core/dictionary.h" -#endif + #include "action_bar_button_entry.h" diff --git a/profiles/actionbar/action_bar_profile.cpp b/profiles/actionbar/action_bar_profile.cpp index 4c8d861..4b61b9e 100644 --- a/profiles/actionbar/action_bar_profile.cpp +++ b/profiles/actionbar/action_bar_profile.cpp @@ -132,13 +132,9 @@ Dictionary ActionBarProfile::to_dict() const { return dict; } void ActionBarProfile::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 if (dict.is_empty()) return; -#else - if (dict.empty()) - return; -#endif + for (int i = 0; i < _action_bars.size(); ++i) { _action_bars.get(i)->set_owner(NULL); diff --git a/profiles/actionbar/action_bar_profile.h b/profiles/actionbar/action_bar_profile.h index 6a2539f..66c6140 100644 --- a/profiles/actionbar/action_bar_profile.h +++ b/profiles/actionbar/action_bar_profile.h @@ -25,19 +25,12 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/templates/vector.h" #include "core/string/ustring.h" #include "core/variant/array.h" #include "core/variant/dictionary.h" -#else -#include "core/reference.h" -#include "core/vector.h" -#include "core/ustring.h" -#include "core/array.h" -#include "core/dictionary.h" -#endif + #include "action_bar_entry.h" diff --git a/profiles/class_profile.cpp b/profiles/class_profile.cpp index 96583ab..a0986eb 100644 --- a/profiles/class_profile.cpp +++ b/profiles/class_profile.cpp @@ -127,11 +127,8 @@ Dictionary ClassProfile::to_dict() const { return dict; } void ClassProfile::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _character_class_name = dict.get("character_class_name", ""); _class_path = dict.get("class_path", ""); diff --git a/profiles/class_profile.h b/profiles/class_profile.h index 9149a5a..041f0ef 100644 --- a/profiles/class_profile.h +++ b/profiles/class_profile.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/string/ustring.h" #include "core/variant/dictionary.h" -#else -#include "core/reference.h" -#include "core/ustring.h" -#include "core/dictionary.h" -#endif + #include "actionbar/action_bar_profile.h" #include "input/input_profile.h" diff --git a/profiles/input/input_profile.cpp b/profiles/input/input_profile.cpp index 15c5789..323e096 100644 --- a/profiles/input/input_profile.cpp +++ b/profiles/input/input_profile.cpp @@ -24,13 +24,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/string/ustring.h" #include "core/config/project_settings.h" -#else -#include "core/ustring.h" -#include "core/project_settings.h" -#endif + #include "../class_profile.h" diff --git a/profiles/input/input_profile.h b/profiles/input/input_profile.h index 447a11d..75a1ee1 100644 --- a/profiles/input/input_profile.h +++ b/profiles/input/input_profile.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/string/ustring.h" -#else -#include "core/reference.h" -#include "core/ustring.h" -#endif + class ClassProfile; diff --git a/profiles/input/input_profile_modifier.h b/profiles/input/input_profile_modifier.h index ff2ecb9..dc64efd 100644 --- a/profiles/input/input_profile_modifier.h +++ b/profiles/input/input_profile_modifier.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/templates/vector.h" #include "core/string/ustring.h" -#else -#include "core/reference.h" -#include "core/vector.h" -#include "core/ustring.h" -#endif + #include "input_profile_modifier_entry.h" diff --git a/profiles/input/input_profile_modifier_entry.h b/profiles/input/input_profile_modifier_entry.h index 12c6b18..9972d80 100644 --- a/profiles/input/input_profile_modifier_entry.h +++ b/profiles/input/input_profile_modifier_entry.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/string/ustring.h" -#else -#include "core/reference.h" -#include "core/ustring.h" -#endif + class InputProfileModifierEntry : public RefCounted { GDCLASS(InputProfileModifierEntry, RefCounted); diff --git a/profiles/player_profile.cpp b/profiles/player_profile.cpp index ab90677..7a79aa2 100644 --- a/profiles/player_profile.cpp +++ b/profiles/player_profile.cpp @@ -146,11 +146,8 @@ Dictionary PlayerProfile::to_dict() const { return dict; } void PlayerProfile::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + clear_class_profiles(); diff --git a/profiles/player_profile.h b/profiles/player_profile.h index edba513..63d9e38 100644 --- a/profiles/player_profile.h +++ b/profiles/player_profile.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/string/ustring.h" #include "core/variant/dictionary.h" -#else -#include "core/reference.h" -#include "core/ustring.h" -#include "core/dictionary.h" -#endif + #include "class_profile.h" diff --git a/singletons/ess.h b/singletons/ess.h index 817eb0e..dd7f447 100644 --- a/singletons/ess.h +++ b/singletons/ess.h @@ -25,19 +25,12 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/config/engine.h" #include "core/core_bind.h" #include "core/io/resource.h" #include "core/object/object.h" #include "core/string/ustring.h" -#else -#include "core/bind/core_bind.h" -#include "core/engine.h" -#include "core/object.h" -#include "core/resource.h" -#include "core/ustring.h" -#endif + #include "scene/main/node.h" diff --git a/singletons/profile_manager.cpp b/singletons/profile_manager.cpp index c69415b..be536fe 100644 --- a/singletons/profile_manager.cpp +++ b/singletons/profile_manager.cpp @@ -26,13 +26,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/config/engine.h" #include "core/config/project_settings.h" -#else -#include "core/engine.h" -#include "core/project_settings.h" -#endif + #include "../defines.h" @@ -170,11 +166,8 @@ Dictionary ProfileManager::to_dict() const { return dict; } void ProfileManager::from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + clears_player_profiles(); @@ -234,8 +227,8 @@ void ProfileManager::_bind_methods() { ADD_SIGNAL(MethodInfo("keybinds_changed")); ADD_SIGNAL(MethodInfo("changed")); - D_METHOD("_save"); - D_METHOD("_load"); + GDVIRTUAL_BIND("_save"); + GDVIRTUAL_BIND("_load"); ClassDB::bind_method(D_METHOD("_save"), &ProfileManager::_save); ClassDB::bind_method(D_METHOD("_load"), &ProfileManager::_load); diff --git a/singletons/profile_manager.h b/singletons/profile_manager.h index 83c1d48..830ebc9 100644 --- a/singletons/profile_manager.h +++ b/singletons/profile_manager.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/object.h" #include "core/templates/vector.h" -#else -#include "core/object.h" -#include "core/vector.h" -#endif + #include "../profiles/player_profile.h" diff --git a/skeleton/character_skeleton_2d.cpp b/skeleton/character_skeleton_2d.cpp index f1498cd..4050abd 100644 --- a/skeleton/character_skeleton_2d.cpp +++ b/skeleton/character_skeleton_2d.cpp @@ -551,7 +551,7 @@ void CharacterSkeleton2D::_bind_methods() { ClassDB::bind_method(D_METHOD("get_model_visual_count"), &CharacterSkeleton2D::get_model_visual_count); ClassDB::bind_method(D_METHOD("clear_model_visuals"), &CharacterSkeleton2D::clear_model_visuals); - D_METHOD("_build_model"); + GDVIRTUAL_BIND("_build_model"); ClassDB::bind_method(D_METHOD("get_model_dirty"), &CharacterSkeleton2D::get_model_dirty); ClassDB::bind_method(D_METHOD("set_model_dirty", "value"), &CharacterSkeleton2D::set_model_dirty); @@ -586,7 +586,7 @@ void CharacterSkeleton2D::_bind_methods() { ClassDB::bind_method(D_METHOD("attach_point_count"), &CharacterSkeleton2D::attach_point_count); - D_METHOD("_common_attach_point_index_get", "point", PROPERTY_HINT_NONE, EntityEnums::BINDING_STRING_COMMON_CHARCATER_SKELETON_POINTS); + GDVIRTUAL_BIND("_common_attach_point_index_get", "point", PROPERTY_HINT_NONE, EntityEnums::BINDING_STRING_COMMON_CHARCATER_SKELETON_POINTS); ClassDB::bind_method(D_METHOD("common_attach_point_node_get", "point"), &CharacterSkeleton2D::common_attach_point_node_get); ClassDB::bind_method(D_METHOD("common_attach_point_add", "point", "scene"), &CharacterSkeleton2D::common_attach_point_add); diff --git a/skeleton/character_skeleton_2d.h b/skeleton/character_skeleton_2d.h index 7b2e06e..1bf7796 100644 --- a/skeleton/character_skeleton_2d.h +++ b/skeleton/character_skeleton_2d.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/templates/vector.h" #include "core/string/ustring.h" #include "core/string/node_path.h" -#else -#include "core/vector.h" -#include "core/ustring.h" -#include "core/node_path.h" -#endif + #include "scene/2d/node_2d.h" diff --git a/skeleton/character_skeleton_3d.cpp b/skeleton/character_skeleton_3d.cpp index c616709..6af7c97 100644 --- a/skeleton/character_skeleton_3d.cpp +++ b/skeleton/character_skeleton_3d.cpp @@ -651,7 +651,7 @@ void CharacterSkeleton3D::_bind_methods() { ClassDB::bind_method(D_METHOD("get_model_visual_count"), &CharacterSkeleton3D::get_model_visual_count); ClassDB::bind_method(D_METHOD("clear_model_visuals"), &CharacterSkeleton3D::clear_model_visuals); - D_METHOD("_build_model"); + GDVIRTUAL_BIND("_build_model"); ClassDB::bind_method(D_METHOD("get_model_dirty"), &CharacterSkeleton3D::get_model_dirty); ClassDB::bind_method(D_METHOD("set_model_dirty", "value"), &CharacterSkeleton3D::set_model_dirty); @@ -700,7 +700,7 @@ void CharacterSkeleton3D::_bind_methods() { ClassDB::bind_method(D_METHOD("attach_point_count"), &CharacterSkeleton3D::attach_point_count); - D_METHOD("_common_attach_point_index_get", "point", PROPERTY_HINT_NONE, EntityEnums::BINDING_STRING_COMMON_CHARCATER_SKELETON_POINTS); + GDVIRTUAL_BIND("_common_attach_point_index_get", "point", PROPERTY_HINT_NONE, EntityEnums::BINDING_STRING_COMMON_CHARCATER_SKELETON_POINTS); ClassDB::bind_method(D_METHOD("common_attach_point_node_get", "point"), &CharacterSkeleton3D::common_attach_point_node_get); ClassDB::bind_method(D_METHOD("common_attach_point_add", "point", "scene"), &CharacterSkeleton3D::common_attach_point_add); diff --git a/skeleton/character_skeleton_3d.h b/skeleton/character_skeleton_3d.h index 46d284c..92a6679 100644 --- a/skeleton/character_skeleton_3d.h +++ b/skeleton/character_skeleton_3d.h @@ -25,15 +25,10 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/templates/vector.h" #include "core/string/ustring.h" #include "core/string/node_path.h" -#else -#include "core/vector.h" -#include "core/ustring.h" -#include "core/node_path.h" -#endif + #include "scene/main/node.h" diff --git a/skeleton/entity_skeleton_data.h b/skeleton/entity_skeleton_data.h index 1ecedd3..3b7a847 100644 --- a/skeleton/entity_skeleton_data.h +++ b/skeleton/entity_skeleton_data.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/io/resource.h" #include "core/string/ustring.h" -#else -#include "core/resource.h" -#include "core/ustring.h" -#endif + class EntitySkeletonData : public Resource { GDCLASS(EntitySkeletonData, Resource); diff --git a/skeleton/skeleton_model_entry.h b/skeleton/skeleton_model_entry.h index c2c243e..7a50eec 100644 --- a/skeleton/skeleton_model_entry.h +++ b/skeleton/skeleton_model_entry.h @@ -25,11 +25,8 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" -#else -#include "core/reference.h" -#endif + #include "../data/items/model_visual_entry.h" diff --git a/spawners/ess_entity_spawner.cpp b/spawners/ess_entity_spawner.cpp index 2678c90..6f34ca6 100644 --- a/spawners/ess_entity_spawner.cpp +++ b/spawners/ess_entity_spawner.cpp @@ -49,7 +49,7 @@ ESSEntitySpawner::~ESSEntitySpawner() { } void ESSEntitySpawner::_bind_methods() { - D_METHOD("_request_entity_spawn", "info", "EntityCreateInfo"); + GDVIRTUAL_BIND("_request_entity_spawn", "info", "EntityCreateInfo"); ADD_SIGNAL(MethodInfo("on_entity_spawn", PropertyInfo(Variant::OBJECT, "info", PROPERTY_HINT_RESOURCE_TYPE, "EntityCreateInfo"))); ClassDB::bind_method(D_METHOD("request_entity_spawn", "info"), &ESSEntitySpawner::request_entity_spawn); diff --git a/spell_enums.h b/spell_enums.h index e39b3a1..cc2d22f 100644 --- a/spell_enums.h +++ b/spell_enums.h @@ -25,12 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/object.h" #include "core/object/class_db.h" -#else -#include "core/object.h" -#endif + class SpellEnums : public Object { GDCLASS(SpellEnums, Object); diff --git a/utility/entity_create_info.cpp b/utility/entity_create_info.cpp index 7d87bf4..fdadd74 100644 --- a/utility/entity_create_info.cpp +++ b/utility/entity_create_info.cpp @@ -190,11 +190,8 @@ Dictionary EntityCreateInfo::_to_dict() { return dict; } void EntityCreateInfo::_from_dict(const Dictionary &dict) { -#if VERSION_MAJOR > 3 ERR_FAIL_COND(dict.is_empty()); -#else - ERR_FAIL_COND(dict.empty()); -#endif + _guid = dict.get("guid", 0); _networked = dict.get("networked", false); @@ -299,8 +296,8 @@ void EntityCreateInfo::_bind_methods() { ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "created_entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), "set_created_entity", "get_created_entity"); //Serialization - D_METHOD("_from_dict", "dict"); - D_METHOD("_to_dict"); + GDVIRTUAL_BIND("_from_dict", "dict"); + GDVIRTUAL_BIND("_to_dict"); ClassDB::bind_method(D_METHOD("from_dict", "dict"), &EntityCreateInfo::from_dict); ClassDB::bind_method(D_METHOD("to_dict"), &EntityCreateInfo::to_dict); diff --git a/utility/entity_create_info.h b/utility/entity_create_info.h index a2b1ccd..0bfdde4 100644 --- a/utility/entity_create_info.h +++ b/utility/entity_create_info.h @@ -25,13 +25,9 @@ SOFTWARE. #include "core/version.h" -#if VERSION_MAJOR > 3 #include "core/object/ref_counted.h" #include "core/string/ustring.h" -#else -#include "core/reference.h" -#include "core/ustring.h" -#endif + #include "../entity_enums.h"