Added EntitySpeciesData to EntityData. Also bound equipment_data.

This commit is contained in:
Relintai 2019-10-25 10:38:32 +02:00
parent 1b8f94b818
commit f07afba4ff
2 changed files with 23 additions and 2 deletions

View File

@ -87,6 +87,13 @@ void EntityData::set_bag_size(int value) {
_bag_size = value;
}
Ref<EntitySpeciesData> EntityData::get_entity_species_data() {
return _entity_species_data;
}
void EntityData::set_entity_species_data(Ref<EntitySpeciesData> value) {
_entity_species_data = value;
}
Ref<EntityClassData> EntityData::get_entity_class_data() {
return _entity_class_data;
}
@ -1179,10 +1186,18 @@ void EntityData::_bind_methods() {
ClassDB::bind_method(D_METHOD("set_bag_size", "value"), &EntityData::set_bag_size);
ADD_PROPERTY(PropertyInfo(Variant::INT, "bag_size"), "set_bag_size", "get_bag_size");
ClassDB::bind_method(D_METHOD("get_entity_species_data"), &EntityData::get_entity_species_data);
ClassDB::bind_method(D_METHOD("set_entity_species_data", "value"), &EntityData::set_entity_species_data);
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "entity_species_data", PROPERTY_HINT_RESOURCE_TYPE, "EntitySpeciesData"), "set_entity_species_data", "get_entity_species_data");
ClassDB::bind_method(D_METHOD("get_entity_class_data"), &EntityData::get_entity_class_data);
ClassDB::bind_method(D_METHOD("set_entity_class_data", "value"), &EntityData::set_entity_class_data);
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "entity_class_data", PROPERTY_HINT_RESOURCE_TYPE, "EntityClassData"), "set_entity_class_data", "get_entity_class_data");
ClassDB::bind_method(D_METHOD("get_equipment_data"), &EntityData::get_equipment_data);
ClassDB::bind_method(D_METHOD("set_equipment_data", "value"), &EntityData::set_equipment_data);
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "equipment_data", PROPERTY_HINT_RESOURCE_TYPE, "EquipmentData"), "set_equipment_data", "get_equipment_data");
// Loot DB
ClassDB::bind_method(D_METHOD("get_loot_db"), &EntityData::get_loot_db);
ClassDB::bind_method(D_METHOD("set_loot_db", "value"), &EntityData::set_loot_db);

View File

@ -2,8 +2,8 @@
#define ENTITY_DATA_H
#include "core/resource.h"
#include "core/vector.h"
#include "core/ustring.h"
#include "core/vector.h"
#include "scene/resources/texture.h"
#include "../../entities/stats/stat_data.h"
@ -23,6 +23,8 @@
#include "../../data/equipment_data.h"
#include "../../skeleton/entity_species_data.h"
class Aura;
class Spell;
class Entity;
@ -70,6 +72,9 @@ public:
int get_bag_size();
void set_bag_size(int value);
Ref<EntitySpeciesData> get_entity_species_data();
void set_entity_species_data(Ref<EntitySpeciesData> value);
Ref<EntityClassData> get_entity_class_data();
void set_entity_class_data(Ref<EntityClassData> data);
@ -94,7 +99,7 @@ public:
Vector<Variant> get_craft_recipes();
void set_craft_recipes(const Vector<Variant> &recipe);
/*
/*
Vector<int> get_mob_party_ids();
void set_mob_party_ids(Vector<int> ids);
@ -253,6 +258,7 @@ private:
int _bag_size;
Ref<EntityClassData> _entity_class_data;
Ref<EntitySpeciesData> _entity_species_data;
Ref<EquipmentData> _equipment_data;
Ref<LootDataBase> _lootdb;