mirror of
https://github.com/Relintai/entity_spell_system.git
synced 2025-02-20 17:14:44 +01:00
Renamed ItemVisual to ModelVisual.
This commit is contained in:
parent
b1efeb662a
commit
fa33d5d57e
@ -24,7 +24,7 @@ Mesh Data Resource
|
||||
|
||||
https://github.com/Relintai/mesh_data_resource.git
|
||||
|
||||
Adds mesh support to ItemVisuals. This is exists because in gles2 mesh data cannot be accessed directly from ArrayMeshes.
|
||||
Adds mesh support to ModelVisuals. This is exists because in gles2 mesh data cannot be accessed directly from ArrayMeshes.
|
||||
|
||||
## Overview
|
||||
|
||||
|
4
SCsub
4
SCsub
@ -26,8 +26,8 @@ sources = [
|
||||
"data/items/equipment_data.cpp",
|
||||
"data/items/craft_recipe_helper.cpp",
|
||||
"data/items/craft_recipe.cpp",
|
||||
"data/items/item_visual.cpp",
|
||||
"data/items/item_visual_entry.cpp",
|
||||
"data/items/model_visual.cpp",
|
||||
"data/items/model_visual_entry.cpp",
|
||||
"data/species/entity_species_data.cpp",
|
||||
"data/species/species_model_data.cpp",
|
||||
"data/species/species_instance.cpp",
|
||||
|
@ -26,8 +26,8 @@ def get_doc_classes():
|
||||
"ItemStatModifier",
|
||||
"ItemTemplateStatModifier",
|
||||
"ItemTemplate",
|
||||
"ItemVisualEntry",
|
||||
"ItemVisual",
|
||||
"ModelVisualEntry",
|
||||
"ModelVisual",
|
||||
"SpellCooldownManipulationData",
|
||||
"SpellEffectVisualSimple",
|
||||
"SpellEffectVisual",
|
||||
|
@ -80,11 +80,11 @@ void ItemTemplate::set_equip_slot(const int value) {
|
||||
_equip_slot = value;
|
||||
}
|
||||
|
||||
Ref<ItemVisual> ItemTemplate::get_item_visual() const {
|
||||
return _item_visual;
|
||||
Ref<ModelVisual> ItemTemplate::get_model_visual() const {
|
||||
return _model_visual;
|
||||
}
|
||||
void ItemTemplate::set_item_visual(const Ref<ItemVisual> &value) {
|
||||
_item_visual = value;
|
||||
void ItemTemplate::set_model_visual(const Ref<ModelVisual> &value) {
|
||||
_model_visual = value;
|
||||
}
|
||||
|
||||
Ref<EntityClassData> ItemTemplate::get_required_character_class() const {
|
||||
@ -539,9 +539,9 @@ void ItemTemplate::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("set_price", "count"), &ItemTemplate::set_price);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "price"), "set_price", "get_price");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_item_visual"), &ItemTemplate::get_item_visual);
|
||||
ClassDB::bind_method(D_METHOD("set_item_visual", "value"), &ItemTemplate::set_item_visual);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "item_visual", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisual"), "set_item_visual", "get_item_visual");
|
||||
ClassDB::bind_method(D_METHOD("get_model_visual"), &ItemTemplate::get_model_visual);
|
||||
ClassDB::bind_method(D_METHOD("set_model_visual", "value"), &ItemTemplate::set_model_visual);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "model_visual", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisual"), "set_model_visual", "get_model_visual");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_stack_size"), &ItemTemplate::get_stack_size);
|
||||
ClassDB::bind_method(D_METHOD("set_stack_size", "value"), &ItemTemplate::set_stack_size);
|
||||
|
@ -29,7 +29,7 @@ SOFTWARE.
|
||||
|
||||
#include "../../item_enums.h"
|
||||
#include "item_template_stat_modifier.h"
|
||||
#include "item_visual.h"
|
||||
#include "model_visual.h"
|
||||
|
||||
class ItemInstance;
|
||||
class Aura;
|
||||
@ -61,8 +61,8 @@ public:
|
||||
int get_equip_slot() const;
|
||||
void set_equip_slot(const int value);
|
||||
|
||||
Ref<ItemVisual> get_item_visual() const;
|
||||
void set_item_visual(const Ref<ItemVisual> &value);
|
||||
Ref<ModelVisual> get_model_visual() const;
|
||||
void set_model_visual(const Ref<ModelVisual> &value);
|
||||
|
||||
Ref<EntityClassData> get_required_character_class() const;
|
||||
void set_required_character_class(const Ref<EntityClassData> &value);
|
||||
@ -200,7 +200,7 @@ private:
|
||||
int _price;
|
||||
|
||||
Ref<EntityClassData> _required_character_class;
|
||||
Ref<ItemVisual> _item_visual;
|
||||
Ref<ModelVisual> _model_visual;
|
||||
|
||||
int _stack_size;
|
||||
|
||||
|
@ -1,95 +0,0 @@
|
||||
/*
|
||||
Copyright (c) 2019-2020 Péter Magyar
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "item_visual.h"
|
||||
|
||||
ItemEnums::EntityTextureLayers ItemVisual::get_layer() {
|
||||
return _layer;
|
||||
}
|
||||
void ItemVisual::set_layer(ItemEnums::EntityTextureLayers layer) {
|
||||
_layer = layer;
|
||||
}
|
||||
|
||||
Ref<ItemVisualEntry> ItemVisual::get_visual(int index) {
|
||||
ERR_FAIL_INDEX_V(index, EntityEnums::SKELETON_POINTS_MAX, Ref<ItemVisualEntry>());
|
||||
|
||||
return _entries[index];
|
||||
}
|
||||
void ItemVisual::set_visual(int index, Ref<ItemVisualEntry> entry) {
|
||||
ERR_FAIL_INDEX(index, EntityEnums::SKELETON_POINTS_MAX);
|
||||
|
||||
_entries[index] = entry;
|
||||
}
|
||||
|
||||
ItemVisual::ItemVisual() {
|
||||
_layer = ItemEnums::ENTITY_TEXTURE_LAYER_NONE;
|
||||
}
|
||||
|
||||
ItemVisual::~ItemVisual() {
|
||||
for (int i = 0; i < EntityEnums::SKELETON_POINTS_MAX; ++i) {
|
||||
_entries[i].unref();
|
||||
}
|
||||
}
|
||||
|
||||
void ItemVisual::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("get_layer"), &ItemVisual::get_layer);
|
||||
ClassDB::bind_method(D_METHOD("set_layer", "layer"), &ItemVisual::set_layer);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "layer", PROPERTY_HINT_ENUM, ItemEnums::BINDING_STRING_ENTITY_TEXTURE_LAYERS), "set_layer", "get_layer");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_visual", "index"), &ItemVisual::get_visual);
|
||||
ClassDB::bind_method(D_METHOD("set_visual", "index", "entry"), &ItemVisual::set_visual);
|
||||
|
||||
ADD_GROUP("Visuals", "visual_");
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_root", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_ROOT);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_pelvis", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_PELVIS);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_spine", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_SPINE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_spine_1", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_SPINE_1);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_spine_2", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_SPINE_2);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_neck", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_NECK);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_head", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_HEAD);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_clavicle", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_upper_arm", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_forearm", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_hand", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_thumb_base", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_thumb_end", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_fingers_base", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_fingers_end", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FINGERS_END);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_clavicle", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_upper_arm", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_forearm", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_hand", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_thumb_base", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_thumb_end", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_fingers_base", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_fingers_end", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_END);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_thigh", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_calf", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_foot", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FOOT);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_thigh", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_calf", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_foot", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FOOT);
|
||||
}
|
95
data/items/model_visual.cpp
Normal file
95
data/items/model_visual.cpp
Normal file
@ -0,0 +1,95 @@
|
||||
/*
|
||||
Copyright (c) 2019-2020 Péter Magyar
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "model_visual.h"
|
||||
|
||||
ItemEnums::EntityTextureLayers ModelVisual::get_layer() {
|
||||
return _layer;
|
||||
}
|
||||
void ModelVisual::set_layer(ItemEnums::EntityTextureLayers layer) {
|
||||
_layer = layer;
|
||||
}
|
||||
|
||||
Ref<ModelVisualEntry> ModelVisual::get_visual(int index) {
|
||||
ERR_FAIL_INDEX_V(index, EntityEnums::SKELETON_POINTS_MAX, Ref<ModelVisualEntry>());
|
||||
|
||||
return _entries[index];
|
||||
}
|
||||
void ModelVisual::set_visual(int index, Ref<ModelVisualEntry> entry) {
|
||||
ERR_FAIL_INDEX(index, EntityEnums::SKELETON_POINTS_MAX);
|
||||
|
||||
_entries[index] = entry;
|
||||
}
|
||||
|
||||
ModelVisual::ModelVisual() {
|
||||
_layer = ItemEnums::ENTITY_TEXTURE_LAYER_NONE;
|
||||
}
|
||||
|
||||
ModelVisual::~ModelVisual() {
|
||||
for (int i = 0; i < EntityEnums::SKELETON_POINTS_MAX; ++i) {
|
||||
_entries[i].unref();
|
||||
}
|
||||
}
|
||||
|
||||
void ModelVisual::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("get_layer"), &ModelVisual::get_layer);
|
||||
ClassDB::bind_method(D_METHOD("set_layer", "layer"), &ModelVisual::set_layer);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "layer", PROPERTY_HINT_ENUM, ItemEnums::BINDING_STRING_ENTITY_TEXTURE_LAYERS), "set_layer", "get_layer");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_visual", "index"), &ModelVisual::get_visual);
|
||||
ClassDB::bind_method(D_METHOD("set_visual", "index", "entry"), &ModelVisual::set_visual);
|
||||
|
||||
ADD_GROUP("Visuals", "visual_");
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_root", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_ROOT);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_pelvis", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_PELVIS);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_spine", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_SPINE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_spine_1", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_SPINE_1);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_spine_2", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_SPINE_2);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_neck", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_NECK);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_head", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_HEAD);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_clavicle", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_upper_arm", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_forearm", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_hand", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_thumb_base", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_thumb_end", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_fingers_base", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_fingers_end", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FINGERS_END);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_clavicle", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_upper_arm", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_forearm", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_hand", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_thumb_base", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_thumb_end", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_fingers_base", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_fingers_end", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_END);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_thigh", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_calf", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_left_foot", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_LEFT_FOOT);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_thigh", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_calf", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "visual_right_foot", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_visual", "get_visual", EntityEnums::SKELETON_POINT_RIGHT_FOOT);
|
||||
}
|
@ -20,33 +20,33 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef ITEM_VISUAL_H
|
||||
#define ITEM_VISUAL_H
|
||||
#ifndef MODEL_VISUAL_H
|
||||
#define MODEL_VISUAL_H
|
||||
|
||||
#include "core/resource.h"
|
||||
|
||||
#include "../../item_enums.h"
|
||||
#include "item_visual_entry.h"
|
||||
#include "model_visual_entry.h"
|
||||
|
||||
class ItemVisual : public Resource {
|
||||
GDCLASS(ItemVisual, Resource);
|
||||
class ModelVisual : public Resource {
|
||||
GDCLASS(ModelVisual, Resource);
|
||||
|
||||
public:
|
||||
ItemEnums::EntityTextureLayers get_layer();
|
||||
void set_layer(ItemEnums::EntityTextureLayers layer);
|
||||
|
||||
Ref<ItemVisualEntry> get_visual(int index);
|
||||
void set_visual(int index, Ref<ItemVisualEntry> entry);
|
||||
Ref<ModelVisualEntry> get_visual(int index);
|
||||
void set_visual(int index, Ref<ModelVisualEntry> entry);
|
||||
|
||||
ItemVisual();
|
||||
~ItemVisual();
|
||||
ModelVisual();
|
||||
~ModelVisual();
|
||||
|
||||
protected:
|
||||
static void _bind_methods();
|
||||
|
||||
private:
|
||||
ItemEnums::EntityTextureLayers _layer;
|
||||
Ref<ItemVisualEntry> _entries[EntityEnums::SKELETON_POINTS_MAX];
|
||||
Ref<ModelVisualEntry> _entries[EntityEnums::SKELETON_POINTS_MAX];
|
||||
};
|
||||
|
||||
#endif
|
@ -20,59 +20,59 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
*/
|
||||
|
||||
#include "item_visual_entry.h"
|
||||
#include "model_visual_entry.h"
|
||||
|
||||
ItemEnums::EntityTextureLayers ItemVisualEntry::get_override_layer() {
|
||||
ItemEnums::EntityTextureLayers ModelVisualEntry::get_override_layer() {
|
||||
return _override_layer;
|
||||
}
|
||||
void ItemVisualEntry::set_override_layer(ItemEnums::EntityTextureLayers layer) {
|
||||
void ModelVisualEntry::set_override_layer(ItemEnums::EntityTextureLayers layer) {
|
||||
_override_layer = layer;
|
||||
}
|
||||
|
||||
#ifdef MESH_DATA_RESOURCE_PRESENT
|
||||
Ref<MeshDataResource> ItemVisualEntry::get_mesh(int index) {
|
||||
Ref<MeshDataResource> ModelVisualEntry::get_mesh(int index) {
|
||||
return _mesh[index];
|
||||
}
|
||||
void ItemVisualEntry::set_mesh(int index, Ref<MeshDataResource> mesh) {
|
||||
void ModelVisualEntry::set_mesh(int index, Ref<MeshDataResource> mesh) {
|
||||
_mesh[index] = mesh;
|
||||
}
|
||||
#endif
|
||||
|
||||
Ref<Texture> ItemVisualEntry::get_texture(int index) {
|
||||
Ref<Texture> ModelVisualEntry::get_texture(int index) {
|
||||
return _texture[index];
|
||||
}
|
||||
void ItemVisualEntry::set_texture(int index, Ref<Texture> texture) {
|
||||
void ModelVisualEntry::set_texture(int index, Ref<Texture> texture) {
|
||||
_texture[index] = texture;
|
||||
}
|
||||
|
||||
Color ItemVisualEntry::get_color() {
|
||||
Color ModelVisualEntry::get_color() {
|
||||
return _color;
|
||||
}
|
||||
void ItemVisualEntry::set_color(Color color) {
|
||||
void ModelVisualEntry::set_color(Color color) {
|
||||
_color = color;
|
||||
}
|
||||
|
||||
Ref<PackedScene> ItemVisualEntry::get_effect() {
|
||||
Ref<PackedScene> ModelVisualEntry::get_effect() {
|
||||
return _effect;
|
||||
}
|
||||
void ItemVisualEntry::set_effect(Ref<PackedScene> effect) {
|
||||
void ModelVisualEntry::set_effect(Ref<PackedScene> effect) {
|
||||
_effect = effect;
|
||||
}
|
||||
|
||||
Vector3 ItemVisualEntry::get_effect_offset(int index) {
|
||||
Vector3 ModelVisualEntry::get_effect_offset(int index) {
|
||||
return _effect_offset[index];
|
||||
}
|
||||
void ItemVisualEntry::set_effect_offset(int index, Vector3 offset) {
|
||||
void ModelVisualEntry::set_effect_offset(int index, Vector3 offset) {
|
||||
_effect_offset[index] = offset;
|
||||
}
|
||||
|
||||
ItemVisualEntry::ItemVisualEntry() {
|
||||
ModelVisualEntry::ModelVisualEntry() {
|
||||
_override_layer = ItemEnums::ENTITY_TEXTURE_LAYER_NONE;
|
||||
|
||||
_color = Color(1, 1, 1, 1);
|
||||
}
|
||||
|
||||
ItemVisualEntry::~ItemVisualEntry() {
|
||||
ModelVisualEntry::~ModelVisualEntry() {
|
||||
for (int i = 0; i < EntityEnums::GENDER_COUNT; ++i) {
|
||||
#ifdef MESH_DATA_RESOURCE_PRESENT
|
||||
_mesh[i].unref();
|
||||
@ -84,33 +84,33 @@ ItemVisualEntry::~ItemVisualEntry() {
|
||||
_effect.unref();
|
||||
}
|
||||
|
||||
void ItemVisualEntry::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("get_override_layer"), &ItemVisualEntry::get_override_layer);
|
||||
ClassDB::bind_method(D_METHOD("set_override_layer", "value"), &ItemVisualEntry::set_override_layer);
|
||||
void ModelVisualEntry::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("get_override_layer"), &ModelVisualEntry::get_override_layer);
|
||||
ClassDB::bind_method(D_METHOD("set_override_layer", "value"), &ModelVisualEntry::set_override_layer);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "override_layer", PROPERTY_HINT_ENUM, ItemEnums::BINDING_STRING_ENTITY_TEXTURE_LAYERS), "set_override_layer", "get_override_layer");
|
||||
|
||||
#ifdef MESH_DATA_RESOURCE_PRESENT
|
||||
ClassDB::bind_method(D_METHOD("get_mesh", "index"), &ItemVisualEntry::get_mesh);
|
||||
ClassDB::bind_method(D_METHOD("set_mesh", "index", "value"), &ItemVisualEntry::set_mesh);
|
||||
ClassDB::bind_method(D_METHOD("get_mesh", "index"), &ModelVisualEntry::get_mesh);
|
||||
ClassDB::bind_method(D_METHOD("set_mesh", "index", "value"), &ModelVisualEntry::set_mesh);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "mesh_male", PROPERTY_HINT_RESOURCE_TYPE, "MeshDataResource"), "set_mesh", "get_mesh", EntityEnums::GENDER_MALE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "mesh_female", PROPERTY_HINT_RESOURCE_TYPE, "MeshDataResource"), "set_mesh", "get_mesh", EntityEnums::GENDER_FEMALE);
|
||||
#endif
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_texture", "index"), &ItemVisualEntry::get_texture);
|
||||
ClassDB::bind_method(D_METHOD("set_texture", "index", "value"), &ItemVisualEntry::set_texture);
|
||||
ClassDB::bind_method(D_METHOD("get_texture", "index"), &ModelVisualEntry::get_texture);
|
||||
ClassDB::bind_method(D_METHOD("set_texture", "index", "value"), &ModelVisualEntry::set_texture);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "texture_male", PROPERTY_HINT_RESOURCE_TYPE, "Texture"), "set_texture", "get_texture", EntityEnums::GENDER_MALE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::OBJECT, "texture_female", PROPERTY_HINT_RESOURCE_TYPE, "Texture"), "set_texture", "get_texture", EntityEnums::GENDER_FEMALE);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_color"), &ItemVisualEntry::get_color);
|
||||
ClassDB::bind_method(D_METHOD("set_color", "value"), &ItemVisualEntry::set_color);
|
||||
ClassDB::bind_method(D_METHOD("get_color"), &ModelVisualEntry::get_color);
|
||||
ClassDB::bind_method(D_METHOD("set_color", "value"), &ModelVisualEntry::set_color);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::COLOR, "color"), "set_color", "get_color");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_effect"), &ItemVisualEntry::get_effect);
|
||||
ClassDB::bind_method(D_METHOD("set_effect", "value"), &ItemVisualEntry::set_effect);
|
||||
ClassDB::bind_method(D_METHOD("get_effect"), &ModelVisualEntry::get_effect);
|
||||
ClassDB::bind_method(D_METHOD("set_effect", "value"), &ModelVisualEntry::set_effect);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "effect_male", PROPERTY_HINT_RESOURCE_TYPE, "PackedScene"), "set_effect", "get_effect");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_effect_offset", "index"), &ItemVisualEntry::get_effect_offset);
|
||||
ClassDB::bind_method(D_METHOD("set_effect_offset", "index", "value"), &ItemVisualEntry::set_effect_offset);
|
||||
ClassDB::bind_method(D_METHOD("get_effect_offset", "index"), &ModelVisualEntry::get_effect_offset);
|
||||
ClassDB::bind_method(D_METHOD("set_effect_offset", "index", "value"), &ModelVisualEntry::set_effect_offset);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::VECTOR3, "effect_offset_male"), "set_effect_offset", "get_effect_offset", EntityEnums::GENDER_MALE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::VECTOR3, "effect_offset_female"), "set_effect_offset", "get_effect_offset", EntityEnums::GENDER_FEMALE);
|
||||
}
|
@ -20,8 +20,8 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
*/
|
||||
|
||||
#ifndef ITEM_VISUAL_ENTRY_H
|
||||
#define ITEM_VISUAL_ENTRY_H
|
||||
#ifndef MODEL_VISUAL_ENTRY_H
|
||||
#define MODEL_VISUAL_ENTRY_H
|
||||
|
||||
#include "core/color.h"
|
||||
#include "core/resource.h"
|
||||
@ -38,8 +38,8 @@ SOFTWARE.
|
||||
#include "../../../mesh_data_resource/mesh_data_resource.h"
|
||||
#endif
|
||||
|
||||
class ItemVisualEntry : public Resource {
|
||||
GDCLASS(ItemVisualEntry, Resource);
|
||||
class ModelVisualEntry : public Resource {
|
||||
GDCLASS(ModelVisualEntry, Resource);
|
||||
|
||||
public:
|
||||
ItemEnums::EntityTextureLayers get_override_layer();
|
||||
@ -62,8 +62,8 @@ public:
|
||||
Vector3 get_effect_offset(int index);
|
||||
void set_effect_offset(int index, Vector3 offset);
|
||||
|
||||
ItemVisualEntry();
|
||||
~ItemVisualEntry();
|
||||
ModelVisualEntry();
|
||||
~ModelVisualEntry();
|
||||
|
||||
protected:
|
||||
static void _bind_methods();
|
@ -25,7 +25,7 @@ SOFTWARE.
|
||||
|
||||
#include "core/resource.h"
|
||||
|
||||
#include "../items/item_visual_entry.h"
|
||||
#include "../items/model_visual_entry.h"
|
||||
|
||||
class EntitySpeciesData;
|
||||
|
||||
|
@ -40,19 +40,19 @@ void SpeciesModelData::set_body(Ref<PackedScene> value) {
|
||||
|
||||
//Entries
|
||||
|
||||
Ref<ItemVisualEntry> SpeciesModelData::get_visual(const int bone_index, const int index) const {
|
||||
ERR_FAIL_INDEX_V(bone_index, EntityEnums::SKELETON_POINTS_MAX, Ref<ItemVisualEntry>());
|
||||
ERR_FAIL_INDEX_V(index, _visuals[bone_index].size(), Ref<ItemVisualEntry>());
|
||||
Ref<ModelVisualEntry> SpeciesModelData::get_visual(const int bone_index, const int index) const {
|
||||
ERR_FAIL_INDEX_V(bone_index, EntityEnums::SKELETON_POINTS_MAX, Ref<ModelVisualEntry>());
|
||||
ERR_FAIL_INDEX_V(index, _visuals[bone_index].size(), Ref<ModelVisualEntry>());
|
||||
|
||||
return _visuals[bone_index].get(index);
|
||||
}
|
||||
void SpeciesModelData::set_visual(const int bone_index, const int index, const Ref<ItemVisualEntry> visual) {
|
||||
void SpeciesModelData::set_visual(const int bone_index, const int index, const Ref<ModelVisualEntry> visual) {
|
||||
ERR_FAIL_INDEX(bone_index, EntityEnums::SKELETON_POINTS_MAX);
|
||||
ERR_FAIL_INDEX(index, _visuals[bone_index].size());
|
||||
|
||||
_visuals[bone_index].set(index, visual);
|
||||
}
|
||||
void SpeciesModelData::add_visual(const int bone_index, const Ref<ItemVisualEntry> visual) {
|
||||
void SpeciesModelData::add_visual(const int bone_index, const Ref<ModelVisualEntry> visual) {
|
||||
ERR_FAIL_INDEX(bone_index, EntityEnums::SKELETON_POINTS_MAX);
|
||||
|
||||
_visuals[bone_index].push_back(visual);
|
||||
@ -88,7 +88,7 @@ void SpeciesModelData::set_visuals(const int bone_index, const Vector<Variant> &
|
||||
|
||||
_visuals[bone_index].clear();
|
||||
for (int i = 0; i < visuals.size(); i++) {
|
||||
Ref<ItemVisualEntry> visual = Ref<ItemVisualEntry>(visuals[i]);
|
||||
Ref<ModelVisualEntry> visual = Ref<ModelVisualEntry>(visuals[i]);
|
||||
|
||||
_visuals[bone_index].push_back(visual);
|
||||
}
|
||||
@ -137,17 +137,17 @@ void SpeciesModelData::set_skin_colors(const Vector<Variant> &skin_colors) {
|
||||
|
||||
//HairStyles
|
||||
|
||||
Ref<ItemVisualEntry> SpeciesModelData::get_hair_style(const int index) const {
|
||||
ERR_FAIL_INDEX_V(index, _hair_styles.size(), Ref<ItemVisualEntry>());
|
||||
Ref<ModelVisualEntry> SpeciesModelData::get_hair_style(const int index) const {
|
||||
ERR_FAIL_INDEX_V(index, _hair_styles.size(), Ref<ModelVisualEntry>());
|
||||
|
||||
return _hair_styles.get(index);
|
||||
}
|
||||
void SpeciesModelData::set_hair_style(const int index, const Ref<ItemVisualEntry> hair_style) {
|
||||
void SpeciesModelData::set_hair_style(const int index, const Ref<ModelVisualEntry> hair_style) {
|
||||
ERR_FAIL_INDEX(index, _hair_styles.size());
|
||||
|
||||
_hair_styles.set(index, hair_style);
|
||||
}
|
||||
void SpeciesModelData::add_hair_style(const Ref<ItemVisualEntry> hair_style) {
|
||||
void SpeciesModelData::add_hair_style(const Ref<ModelVisualEntry> hair_style) {
|
||||
_hair_styles.push_back(hair_style);
|
||||
}
|
||||
void SpeciesModelData::remove_hair_style(const int index) {
|
||||
@ -174,7 +174,7 @@ Vector<Variant> SpeciesModelData::get_hair_styles() {
|
||||
void SpeciesModelData::set_hair_styles(const Vector<Variant> &hair_styles) {
|
||||
_hair_styles.clear();
|
||||
for (int i = 0; i < hair_styles.size(); i++) {
|
||||
Ref<ItemVisualEntry> hair_style = Ref<ItemVisualEntry>(hair_styles[i]);
|
||||
Ref<ModelVisualEntry> hair_style = Ref<ModelVisualEntry>(hair_styles[i]);
|
||||
|
||||
_hair_styles.push_back(hair_style);
|
||||
}
|
||||
@ -223,17 +223,17 @@ void SpeciesModelData::set_hair_colors(const Vector<Variant> &hair_colors) {
|
||||
|
||||
//Heads
|
||||
|
||||
Ref<ItemVisualEntry> SpeciesModelData::get_head(const int index) const {
|
||||
ERR_FAIL_INDEX_V(index, _heads.size(), Ref<ItemVisualEntry>());
|
||||
Ref<ModelVisualEntry> SpeciesModelData::get_head(const int index) const {
|
||||
ERR_FAIL_INDEX_V(index, _heads.size(), Ref<ModelVisualEntry>());
|
||||
|
||||
return _heads.get(index);
|
||||
}
|
||||
void SpeciesModelData::set_head(const int index, const Ref<ItemVisualEntry> head) {
|
||||
void SpeciesModelData::set_head(const int index, const Ref<ModelVisualEntry> head) {
|
||||
ERR_FAIL_INDEX(index, _heads.size());
|
||||
|
||||
_heads.set(index, head);
|
||||
}
|
||||
void SpeciesModelData::add_head(const Ref<ItemVisualEntry> head) {
|
||||
void SpeciesModelData::add_head(const Ref<ModelVisualEntry> head) {
|
||||
_heads.push_back(head);
|
||||
}
|
||||
void SpeciesModelData::remove_head(const int index) {
|
||||
@ -260,7 +260,7 @@ Vector<Variant> SpeciesModelData::get_heads() {
|
||||
void SpeciesModelData::set_heads(const Vector<Variant> &heads) {
|
||||
_heads.clear();
|
||||
for (int i = 0; i < heads.size(); i++) {
|
||||
Ref<ItemVisualEntry> head = Ref<ItemVisualEntry>(heads[i]);
|
||||
Ref<ModelVisualEntry> head = Ref<ModelVisualEntry>(heads[i]);
|
||||
|
||||
_heads.push_back(head);
|
||||
}
|
||||
@ -305,39 +305,39 @@ void SpeciesModelData::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("set_visuals", "bone_index", "visuals"), &SpeciesModelData::set_visuals);
|
||||
|
||||
ADD_GROUP("Visuals", "visual_");
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_root", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_ROOT);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_pelvis", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_PELVIS);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_spine", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_SPINE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_spine_1", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_SPINE_1);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_spine_2", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_SPINE_2);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_neck", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_NECK);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_head", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_HEAD);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_root", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_ROOT);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_pelvis", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_PELVIS);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_spine", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_SPINE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_spine_1", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_SPINE_1);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_spine_2", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_SPINE_2);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_neck", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_NECK);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_head", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_HEAD);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_clavicle", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_upper_arm", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_forearm", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_hand", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_thumb_base", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_thumb_end", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_fingers_base", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_fingers_end", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FINGERS_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_clavicle", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_upper_arm", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_forearm", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_hand", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_thumb_base", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_thumb_end", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_fingers_base", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_fingers_end", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FINGERS_END);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_clavicle", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_upper_arm", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_forearm", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_hand", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_thumb_base", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_thumb_end", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_fingers_base", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_fingers_end", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_clavicle", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_CLAVICLE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_upper_arm", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_UPPER_ARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_forearm", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FOREARM);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_hand", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_HAND);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_thumb_base", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_THUMB_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_thumb_end", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_THUMB_END);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_fingers_base", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_BASE);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_fingers_end", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FINGERS_END);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_thigh", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_calf", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_foot", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FOOT);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_thigh", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_calf", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_left_foot", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_LEFT_FOOT);
|
||||
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_thigh", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_calf", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_foot", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FOOT);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_thigh", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_THIGH);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_calf", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_CALF);
|
||||
ADD_PROPERTYI(PropertyInfo(Variant::ARRAY, "visual_right_foot", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_visuals", "get_visuals", EntityEnums::SKELETON_POINT_RIGHT_FOOT);
|
||||
|
||||
//DungeonDatas
|
||||
ClassDB::bind_method(D_METHOD("get_skin_color", "index"), &SpeciesModelData::get_skin_color);
|
||||
@ -361,7 +361,7 @@ void SpeciesModelData::_bind_methods() {
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_hair_styles"), &SpeciesModelData::get_hair_styles);
|
||||
ClassDB::bind_method(D_METHOD("set_hair_styles", "hair_styles"), &SpeciesModelData::set_hair_styles);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "hair_styles", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_hair_styles", "get_hair_styles");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "hair_styles", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_hair_styles", "get_hair_styles");
|
||||
|
||||
//DungeonDatas
|
||||
ClassDB::bind_method(D_METHOD("get_hair_color", "index"), &SpeciesModelData::get_hair_color);
|
||||
@ -385,5 +385,5 @@ void SpeciesModelData::_bind_methods() {
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_heads"), &SpeciesModelData::get_heads);
|
||||
ClassDB::bind_method(D_METHOD("set_heads", "heads"), &SpeciesModelData::set_heads);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "heads", PROPERTY_HINT_NONE, "17/17:ItemVisualEntry", PROPERTY_USAGE_DEFAULT, "ItemVisualEntry"), "set_heads", "get_heads");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "heads", PROPERTY_HINT_NONE, "17/17:ModelVisualEntry", PROPERTY_USAGE_DEFAULT, "ModelVisualEntry"), "set_heads", "get_heads");
|
||||
}
|
||||
|
@ -30,11 +30,11 @@ SOFTWARE.
|
||||
#include "core/vector.h"
|
||||
#include "scene/resources/packed_scene.h"
|
||||
|
||||
#include "../items/item_visual_entry.h"
|
||||
#include "../items/model_visual_entry.h"
|
||||
|
||||
#include "../../entity_enums.h"
|
||||
|
||||
class ItemVisual;
|
||||
class ModelVisual;
|
||||
|
||||
class SpeciesModelData : public Resource {
|
||||
GDCLASS(SpeciesModelData, Resource);
|
||||
@ -47,9 +47,9 @@ public:
|
||||
void set_body(Ref<PackedScene> value);
|
||||
|
||||
//Entries
|
||||
Ref<ItemVisualEntry> get_visual(const int bone_index, const int index) const;
|
||||
void set_visual(const int bone_index, const int index, const Ref<ItemVisualEntry> visual);
|
||||
void add_visual(const int bone_index, const Ref<ItemVisualEntry> visual);
|
||||
Ref<ModelVisualEntry> get_visual(const int bone_index, const int index) const;
|
||||
void set_visual(const int bone_index, const int index, const Ref<ModelVisualEntry> visual);
|
||||
void add_visual(const int bone_index, const Ref<ModelVisualEntry> visual);
|
||||
void remove_visual(const int bone_index, const int index);
|
||||
|
||||
int get_visual_count(const int bone_index) const;
|
||||
@ -69,9 +69,9 @@ public:
|
||||
void set_skin_colors(const Vector<Variant> &skin_colors);
|
||||
|
||||
//HairStyles
|
||||
Ref<ItemVisualEntry> get_hair_style(const int index) const;
|
||||
void set_hair_style(const int index, const Ref<ItemVisualEntry> hair_style);
|
||||
void add_hair_style(const Ref<ItemVisualEntry> hair_style);
|
||||
Ref<ModelVisualEntry> get_hair_style(const int index) const;
|
||||
void set_hair_style(const int index, const Ref<ModelVisualEntry> hair_style);
|
||||
void add_hair_style(const Ref<ModelVisualEntry> hair_style);
|
||||
void remove_hair_style(const int index);
|
||||
|
||||
int get_hair_style_count() const;
|
||||
@ -91,9 +91,9 @@ public:
|
||||
void set_hair_colors(const Vector<Variant> &hair_colors);
|
||||
|
||||
//Heads
|
||||
Ref<ItemVisualEntry> get_head(const int index) const;
|
||||
void set_head(const int index, const Ref<ItemVisualEntry> head);
|
||||
void add_head(const Ref<ItemVisualEntry> head);
|
||||
Ref<ModelVisualEntry> get_head(const int index) const;
|
||||
void set_head(const int index, const Ref<ModelVisualEntry> head);
|
||||
void add_head(const Ref<ModelVisualEntry> head);
|
||||
void remove_head(const int index);
|
||||
|
||||
int get_head_count() const;
|
||||
@ -112,11 +112,11 @@ private:
|
||||
|
||||
Ref<PackedScene> _body;
|
||||
|
||||
Vector<Ref<ItemVisualEntry> > _visuals[EntityEnums::SKELETON_POINTS_MAX];
|
||||
Vector<Ref<ModelVisualEntry> > _visuals[EntityEnums::SKELETON_POINTS_MAX];
|
||||
Vector<Color> _skin_colors;
|
||||
Vector<Ref<ItemVisualEntry> > _hair_styles;
|
||||
Vector<Ref<ModelVisualEntry> > _hair_styles;
|
||||
Vector<Color> _hair_colors;
|
||||
Vector<Ref<ItemVisualEntry> > _heads;
|
||||
Vector<Ref<ModelVisualEntry> > _heads;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -7,43 +7,43 @@
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="add_item_visual">
|
||||
<method name="add_model_visual">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="vis" type="ItemVisual">
|
||||
<argument index="0" name="vis" type="ModelVisual">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="clear_item_visuals">
|
||||
<method name="clear_model_visuals">
|
||||
<return type="void">
|
||||
</return>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_item_visual">
|
||||
<return type="ItemVisual">
|
||||
<method name="get_model_visual">
|
||||
<return type="ModelVisual">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_item_visual_count">
|
||||
<method name="get_model_visual_count">
|
||||
<return type="int">
|
||||
</return>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_item_visual">
|
||||
<method name="remove_model_visual">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="vis" type="ItemVisual">
|
||||
<argument index="0" name="vis" type="ModelVisual">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_item_visual_index">
|
||||
<method name="remove_model_visual_index">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
|
@ -16,20 +16,20 @@
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="add_item_visual">
|
||||
<method name="add_model_visual">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="vis" type="ItemVisual">
|
||||
<argument index="0" name="vis" type="ModelVisual">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="add_item_visual_entry">
|
||||
<method name="add_model_visual_entry">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="vis" type="ItemVisual">
|
||||
<argument index="0" name="vis" type="ModelVisual">
|
||||
</argument>
|
||||
<argument index="1" name="ive" type="ItemVisualEntry">
|
||||
<argument index="1" name="ive" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<argument index="2" name="arg2" type="int">
|
||||
</argument>
|
||||
@ -54,7 +54,7 @@
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="clear_item_visuals">
|
||||
<method name="clear_model_visuals">
|
||||
<return type="void">
|
||||
</return>
|
||||
<description>
|
||||
@ -88,15 +88,15 @@
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_item_visual">
|
||||
<return type="ItemVisual">
|
||||
<method name="get_model_visual">
|
||||
<return type="ModelVisual">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_item_visual_count">
|
||||
<method name="get_model_visual_count">
|
||||
<return type="int">
|
||||
</return>
|
||||
<description>
|
||||
@ -128,27 +128,27 @@
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_item_visual">
|
||||
<method name="remove_model_visual">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="vis" type="ItemVisual">
|
||||
<argument index="0" name="vis" type="ModelVisual">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_item_visual_entry">
|
||||
<method name="remove_model_visual_entry">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="vis" type="ItemVisual">
|
||||
<argument index="0" name="vis" type="ModelVisual">
|
||||
</argument>
|
||||
<argument index="1" name="ive" type="ItemVisualEntry">
|
||||
<argument index="1" name="ive" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<argument index="2" name="arg2" type="int">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="remove_item_visual_index">
|
||||
<method name="remove_model_visual_index">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
|
@ -330,7 +330,7 @@
|
||||
</member>
|
||||
<member name="item_type" type="int" setter="set_item_type" getter="get_item_type" enum="ItemEnums.ItemType" default="0">
|
||||
</member>
|
||||
<member name="item_visual" type="ItemVisual" setter="set_item_visual" getter="get_item_visual">
|
||||
<member name="model_visual" type="ModelVisual" setter="set_model_visual" getter="get_model_visual">
|
||||
</member>
|
||||
<member name="price" type="int" setter="set_price" getter="get_price" default="0">
|
||||
</member>
|
||||
|
@ -1,94 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="ItemVisual" inherits="Resource" version="3.2">
|
||||
<brief_description>
|
||||
Contains an item's visual information.
|
||||
</brief_description>
|
||||
<description>
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="get_visual">
|
||||
<return type="ItemVisualEntry">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_visual">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<argument index="1" name="entry" type="ItemVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
<members>
|
||||
<member name="layer" type="int" setter="set_layer" getter="get_layer" enum="ItemEnums.EntityTextureLayers" default="0">
|
||||
</member>
|
||||
<member name="visual_head" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_calf" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_clavicle" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_fingers_base" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_fingers_end" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_foot" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_forearm" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_hand" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_thigh" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_thumb_base" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_thumb_end" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_upper_arm" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_neck" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_pelvis" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_calf" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_clavicle" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_fingers_base" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_fingers_end" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_foot" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_forearm" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_hand" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_thigh" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_thumb_base" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_thumb_end" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_upper_arm" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_root" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_spine" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_spine_1" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_spine_2" type="ItemVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
</constants>
|
||||
</class>
|
94
doc_classes/ModelVisual.xml
Normal file
94
doc_classes/ModelVisual.xml
Normal file
@ -0,0 +1,94 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="ModelVisual" inherits="Resource" version="3.2">
|
||||
<brief_description>
|
||||
Contains an item's visual information.
|
||||
</brief_description>
|
||||
<description>
|
||||
</description>
|
||||
<tutorials>
|
||||
</tutorials>
|
||||
<methods>
|
||||
<method name="get_visual">
|
||||
<return type="ModelVisualEntry">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
<method name="set_visual">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<argument index="1" name="entry" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
</method>
|
||||
</methods>
|
||||
<members>
|
||||
<member name="layer" type="int" setter="set_layer" getter="get_layer" enum="ItemEnums.EntityTextureLayers" default="0">
|
||||
</member>
|
||||
<member name="visual_head" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_calf" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_clavicle" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_fingers_base" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_fingers_end" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_foot" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_forearm" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_hand" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_thigh" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_thumb_base" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_thumb_end" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_left_upper_arm" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_neck" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_pelvis" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_calf" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_clavicle" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_fingers_base" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_fingers_end" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_foot" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_forearm" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_hand" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_thigh" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_thumb_base" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_thumb_end" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_right_upper_arm" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_root" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_spine" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_spine_1" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
<member name="visual_spine_2" type="ModelVisualEntry" setter="set_visual" getter="get_visual">
|
||||
</member>
|
||||
</members>
|
||||
<constants>
|
||||
</constants>
|
||||
</class>
|
@ -1,7 +1,7 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<class name="ItemVisualEntry" inherits="Resource" version="3.2">
|
||||
<class name="ModelVisualEntry" inherits="Resource" version="3.2">
|
||||
<brief_description>
|
||||
One Entry for [ItemVisual].
|
||||
One Entry for [ModelVisual].
|
||||
</brief_description>
|
||||
<description>
|
||||
</description>
|
@ -14,7 +14,7 @@
|
||||
</member>
|
||||
<member name="count" type="int" setter="set_count" getter="get_count" default="1">
|
||||
</member>
|
||||
<member name="entry" type="ItemVisualEntry" setter="set_entry" getter="get_entry">
|
||||
<member name="entry" type="ModelVisualEntry" setter="set_entry" getter="get_entry">
|
||||
</member>
|
||||
<member name="priority" type="int" setter="set_priority" getter="get_priority" default="0">
|
||||
</member>
|
||||
|
@ -19,7 +19,7 @@
|
||||
<method name="add_hair_style">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="hair_style" type="ItemVisualEntry">
|
||||
<argument index="0" name="hair_style" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
@ -27,7 +27,7 @@
|
||||
<method name="add_head">
|
||||
<return type="void">
|
||||
</return>
|
||||
<argument index="0" name="head" type="ItemVisualEntry">
|
||||
<argument index="0" name="head" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
@ -45,7 +45,7 @@
|
||||
</return>
|
||||
<argument index="0" name="bone_index" type="int">
|
||||
</argument>
|
||||
<argument index="1" name="visual" type="ItemVisualEntry">
|
||||
<argument index="1" name="visual" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
@ -65,7 +65,7 @@
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_hair_style" qualifiers="const">
|
||||
<return type="ItemVisualEntry">
|
||||
<return type="ModelVisualEntry">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
@ -79,7 +79,7 @@
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_head" qualifiers="const">
|
||||
<return type="ItemVisualEntry">
|
||||
<return type="ModelVisualEntry">
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
@ -107,7 +107,7 @@
|
||||
</description>
|
||||
</method>
|
||||
<method name="get_visual" qualifiers="const">
|
||||
<return type="ItemVisualEntry">
|
||||
<return type="ModelVisualEntry">
|
||||
</return>
|
||||
<argument index="0" name="bone_index" type="int">
|
||||
</argument>
|
||||
@ -189,7 +189,7 @@
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<argument index="1" name="data" type="ItemVisualEntry">
|
||||
<argument index="1" name="data" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
@ -199,7 +199,7 @@
|
||||
</return>
|
||||
<argument index="0" name="index" type="int">
|
||||
</argument>
|
||||
<argument index="1" name="data" type="ItemVisualEntry">
|
||||
<argument index="1" name="data" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
@ -221,7 +221,7 @@
|
||||
</argument>
|
||||
<argument index="1" name="index" type="int">
|
||||
</argument>
|
||||
<argument index="2" name="data" type="ItemVisualEntry">
|
||||
<argument index="2" name="data" type="ModelVisualEntry">
|
||||
</argument>
|
||||
<description>
|
||||
</description>
|
||||
|
@ -2283,13 +2283,13 @@ void Entity::_equip_applyc_item(Ref<ItemInstance> item) {
|
||||
ERR_FAIL_COND(!it.is_valid());
|
||||
|
||||
#if VERSION_MAJOR < 4
|
||||
if (it->get_item_visual().is_valid() && ObjectDB::instance_validate(_character_skeleton)) {
|
||||
if (it->get_model_visual().is_valid() && ObjectDB::instance_validate(_character_skeleton)) {
|
||||
#else
|
||||
if (it->get_item_visual().is_valid() && _character_skeleton == NULL) {
|
||||
if (it->get_model_visual().is_valid() && _character_skeleton == NULL) {
|
||||
#endif
|
||||
|
||||
if (_character_skeleton->has_method("add_item_visual"))
|
||||
_character_skeleton->call("add_item_visual", it->get_item_visual());
|
||||
if (_character_skeleton->has_method("add_model_visual"))
|
||||
_character_skeleton->call("add_model_visual", it->get_model_visual());
|
||||
}
|
||||
}
|
||||
void Entity::_equip_deapplyc_item(Ref<ItemInstance> item) {
|
||||
@ -2300,13 +2300,13 @@ void Entity::_equip_deapplyc_item(Ref<ItemInstance> item) {
|
||||
ERR_FAIL_COND(!it.is_valid());
|
||||
|
||||
#if VERSION_MAJOR < 4
|
||||
if (it->get_item_visual().is_valid() && ObjectDB::instance_validate(_character_skeleton)) {
|
||||
if (it->get_model_visual().is_valid() && ObjectDB::instance_validate(_character_skeleton)) {
|
||||
#else
|
||||
if (it->get_item_visual().is_valid() && _character_skeleton == NULL) {
|
||||
if (it->get_model_visual().is_valid() && _character_skeleton == NULL) {
|
||||
#endif
|
||||
|
||||
if (_character_skeleton->has_method("remove_item_visual"))
|
||||
_character_skeleton->call("remove_item_visual", it->get_item_visual());
|
||||
if (_character_skeleton->has_method("remove_model_visual"))
|
||||
_character_skeleton->call("remove_model_visual", it->get_model_visual());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -51,8 +51,8 @@ SOFTWARE.
|
||||
#include "entities/data/character_spec.h"
|
||||
#include "entities/data/talent_row_data.h"
|
||||
|
||||
#include "data/items/item_visual.h"
|
||||
#include "data/items/item_visual_entry.h"
|
||||
#include "data/items/model_visual.h"
|
||||
#include "data/items/model_visual_entry.h"
|
||||
|
||||
#include "data/atlases/character_atlas.h"
|
||||
#include "data/atlases/character_atlas_entry.h"
|
||||
@ -181,8 +181,8 @@ void register_entity_spell_system_types() {
|
||||
ClassDB::register_class<EntitySkill>();
|
||||
ClassDB::register_class<EntitySkillData>();
|
||||
|
||||
ClassDB::register_class<ItemVisual>();
|
||||
ClassDB::register_class<ItemVisualEntry>();
|
||||
ClassDB::register_class<ModelVisual>();
|
||||
ClassDB::register_class<ModelVisualEntry>();
|
||||
|
||||
ClassDB::register_class<CharacterAtlas>();
|
||||
ClassDB::register_class<CharacterAtlasEntry>();
|
||||
|
@ -22,19 +22,19 @@ SOFTWARE.
|
||||
|
||||
#include "character_skeleton_2d.h"
|
||||
|
||||
void CharacterSkeleton2D::add_item_visual(Ref<ItemVisual> vis) {
|
||||
void CharacterSkeleton2D::add_model_visual(Ref<ModelVisual> vis) {
|
||||
}
|
||||
void CharacterSkeleton2D::remove_item_visual(Ref<ItemVisual> vis) {
|
||||
void CharacterSkeleton2D::remove_model_visual(Ref<ModelVisual> vis) {
|
||||
}
|
||||
void CharacterSkeleton2D::remove_item_visual_index(int index) {
|
||||
void CharacterSkeleton2D::remove_model_visual_index(int index) {
|
||||
}
|
||||
Ref<ItemVisual> CharacterSkeleton2D::get_item_visual(int index) {
|
||||
return Ref<ItemVisual>();
|
||||
Ref<ModelVisual> CharacterSkeleton2D::get_model_visual(int index) {
|
||||
return Ref<ModelVisual>();
|
||||
}
|
||||
int CharacterSkeleton2D::get_item_visual_count() {
|
||||
int CharacterSkeleton2D::get_model_visual_count() {
|
||||
return 0;
|
||||
}
|
||||
void CharacterSkeleton2D::clear_item_visuals() {
|
||||
void CharacterSkeleton2D::clear_model_visuals() {
|
||||
}
|
||||
|
||||
EntityEnums::EntityGender CharacterSkeleton2D::get_gender() {
|
||||
@ -56,10 +56,10 @@ void CharacterSkeleton2D::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("set_gender", "value"), &CharacterSkeleton2D::set_gender);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "gender", PROPERTY_HINT_ENUM, EntityEnums::BINDING_STRING_ENTITY_GENDER), "set_gender", "get_gender");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("add_item_visual", "vis"), &CharacterSkeleton2D::add_item_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_item_visual", "vis"), &CharacterSkeleton2D::remove_item_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_item_visual_index", "index"), &CharacterSkeleton2D::remove_item_visual_index);
|
||||
ClassDB::bind_method(D_METHOD("get_item_visual", "index"), &CharacterSkeleton2D::get_item_visual);
|
||||
ClassDB::bind_method(D_METHOD("get_item_visual_count"), &CharacterSkeleton2D::get_item_visual_count);
|
||||
ClassDB::bind_method(D_METHOD("clear_item_visuals"), &CharacterSkeleton2D::clear_item_visuals);
|
||||
ClassDB::bind_method(D_METHOD("add_model_visual", "vis"), &CharacterSkeleton2D::add_model_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_model_visual", "vis"), &CharacterSkeleton2D::remove_model_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_model_visual_index", "index"), &CharacterSkeleton2D::remove_model_visual_index);
|
||||
ClassDB::bind_method(D_METHOD("get_model_visual", "index"), &CharacterSkeleton2D::get_model_visual);
|
||||
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);
|
||||
}
|
||||
|
@ -31,18 +31,18 @@ SOFTWARE.
|
||||
|
||||
#include "../entity_enums.h"
|
||||
|
||||
#include "../data/items/item_visual.h"
|
||||
#include "../data/items/model_visual.h"
|
||||
|
||||
class CharacterSkeleton2D : public Node2D {
|
||||
GDCLASS(CharacterSkeleton2D, Node2D);
|
||||
|
||||
public:
|
||||
virtual void add_item_visual(Ref<ItemVisual> vis);
|
||||
virtual void remove_item_visual(Ref<ItemVisual> vis);
|
||||
virtual void remove_item_visual_index(int index);
|
||||
virtual Ref<ItemVisual> get_item_visual(int index);
|
||||
virtual int get_item_visual_count();
|
||||
virtual void clear_item_visuals();
|
||||
virtual void add_model_visual(Ref<ModelVisual> vis);
|
||||
virtual void remove_model_visual(Ref<ModelVisual> vis);
|
||||
virtual void remove_model_visual_index(int index);
|
||||
virtual Ref<ModelVisual> get_model_visual(int index);
|
||||
virtual int get_model_visual_count();
|
||||
virtual void clear_model_visuals();
|
||||
|
||||
EntityEnums::EntityGender get_gender();
|
||||
void set_gender(EntityEnums::EntityGender value);
|
||||
|
@ -22,7 +22,7 @@ SOFTWARE.
|
||||
|
||||
#include "character_skeleton_3d.h"
|
||||
|
||||
#include "../data/items/item_visual.h"
|
||||
#include "../data/items/model_visual.h"
|
||||
|
||||
#include "core/version.h"
|
||||
|
||||
@ -119,62 +119,62 @@ void CharacterSkeleton3D::update_nodes() {
|
||||
set_animation_tree_path(_animation_tree_path);
|
||||
}
|
||||
|
||||
void CharacterSkeleton3D::add_item_visual(Ref<ItemVisual> vis) {
|
||||
void CharacterSkeleton3D::add_model_visual(Ref<ModelVisual> vis) {
|
||||
ERR_FAIL_COND(!vis.is_valid());
|
||||
|
||||
for (int i = 0; i < EntityEnums::SKELETON_POINTS_MAX; ++i) {
|
||||
Ref<ItemVisualEntry> e = vis->get_visual(i);
|
||||
Ref<ModelVisualEntry> e = vis->get_visual(i);
|
||||
|
||||
if (e.is_valid())
|
||||
add_item_visual_entry(vis, e, i);
|
||||
add_model_visual_entry(vis, e, i);
|
||||
}
|
||||
|
||||
_item_visuals.push_back(vis);
|
||||
_model_visuals.push_back(vis);
|
||||
|
||||
set_process(true);
|
||||
_model_dirty = true;
|
||||
}
|
||||
void CharacterSkeleton3D::remove_item_visual(Ref<ItemVisual> vis) {
|
||||
void CharacterSkeleton3D::remove_model_visual(Ref<ModelVisual> vis) {
|
||||
ERR_FAIL_COND(!vis.is_valid());
|
||||
|
||||
int index = _item_visuals.find(vis);
|
||||
int index = _model_visuals.find(vis);
|
||||
|
||||
if (index == -1)
|
||||
return;
|
||||
|
||||
for (int i = 0; i < EntityEnums::SKELETON_POINTS_MAX; ++i) {
|
||||
Ref<ItemVisualEntry> e = vis->get_visual(i);
|
||||
Ref<ModelVisualEntry> e = vis->get_visual(i);
|
||||
|
||||
if (e.is_valid())
|
||||
remove_item_visual_entry(vis, e, i);
|
||||
remove_model_visual_entry(vis, e, i);
|
||||
}
|
||||
|
||||
_item_visuals.remove(index);
|
||||
_model_visuals.remove(index);
|
||||
|
||||
set_process(true);
|
||||
_model_dirty = true;
|
||||
}
|
||||
void CharacterSkeleton3D::remove_item_visual_index(int index) {
|
||||
ERR_FAIL_INDEX(index, _item_visuals.size());
|
||||
void CharacterSkeleton3D::remove_model_visual_index(int index) {
|
||||
ERR_FAIL_INDEX(index, _model_visuals.size());
|
||||
|
||||
set_process(true);
|
||||
_model_dirty = true;
|
||||
|
||||
_item_visuals.remove(index);
|
||||
_model_visuals.remove(index);
|
||||
}
|
||||
Ref<ItemVisual> CharacterSkeleton3D::get_item_visual(int index) {
|
||||
ERR_FAIL_INDEX_V(index, _item_visuals.size(), Ref<ItemVisual>());
|
||||
Ref<ModelVisual> CharacterSkeleton3D::get_model_visual(int index) {
|
||||
ERR_FAIL_INDEX_V(index, _model_visuals.size(), Ref<ModelVisual>());
|
||||
|
||||
set_process(true);
|
||||
_model_dirty = true;
|
||||
|
||||
return _item_visuals.get(index);
|
||||
return _model_visuals.get(index);
|
||||
}
|
||||
int CharacterSkeleton3D::get_item_visual_count() {
|
||||
return _item_visuals.size();
|
||||
int CharacterSkeleton3D::get_model_visual_count() {
|
||||
return _model_visuals.size();
|
||||
}
|
||||
void CharacterSkeleton3D::clear_item_visuals() {
|
||||
_item_visuals.clear();
|
||||
void CharacterSkeleton3D::clear_model_visuals() {
|
||||
_model_visuals.clear();
|
||||
|
||||
for (int i = 0; i < EntityEnums::SKELETON_POINTS_MAX; ++i) {
|
||||
_entries[i].clear();
|
||||
@ -184,7 +184,7 @@ void CharacterSkeleton3D::clear_item_visuals() {
|
||||
set_process(true);
|
||||
}
|
||||
|
||||
void CharacterSkeleton3D::add_item_visual_entry(Ref<ItemVisual> vis, Ref<ItemVisualEntry> ive, int target_bone) {
|
||||
void CharacterSkeleton3D::add_model_visual_entry(Ref<ModelVisual> vis, Ref<ModelVisualEntry> ive, int target_bone) {
|
||||
ERR_FAIL_COND(!vis.is_valid());
|
||||
ERR_FAIL_COND(!ive.is_valid());
|
||||
|
||||
@ -212,7 +212,7 @@ void CharacterSkeleton3D::add_item_visual_entry(Ref<ItemVisual> vis, Ref<ItemVis
|
||||
_model_dirty = true;
|
||||
set_process(true);
|
||||
}
|
||||
void CharacterSkeleton3D::remove_item_visual_entry(Ref<ItemVisual> vis, Ref<ItemVisualEntry> ive, int target_bone) {
|
||||
void CharacterSkeleton3D::remove_model_visual_entry(Ref<ModelVisual> vis, Ref<ModelVisualEntry> ive, int target_bone) {
|
||||
ERR_FAIL_COND(!vis.is_valid());
|
||||
ERR_FAIL_COND(!ive.is_valid());
|
||||
|
||||
@ -378,7 +378,7 @@ CharacterSkeleton3D::~CharacterSkeleton3D() {
|
||||
_entries[i].clear();
|
||||
}
|
||||
|
||||
_item_visuals.clear();
|
||||
_model_visuals.clear();
|
||||
}
|
||||
|
||||
void CharacterSkeleton3D::_notification(int p_what) {
|
||||
@ -401,12 +401,12 @@ void CharacterSkeleton3D::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("set_gender", "value"), &CharacterSkeleton3D::set_gender);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "gender", PROPERTY_HINT_ENUM, EntityEnums::BINDING_STRING_ENTITY_GENDER), "set_gender", "get_gender");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("add_item_visual", "vis"), &CharacterSkeleton3D::add_item_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_item_visual", "vis"), &CharacterSkeleton3D::remove_item_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_item_visual_index", "index"), &CharacterSkeleton3D::remove_item_visual_index);
|
||||
ClassDB::bind_method(D_METHOD("get_item_visual", "index"), &CharacterSkeleton3D::get_item_visual);
|
||||
ClassDB::bind_method(D_METHOD("get_item_visual_count"), &CharacterSkeleton3D::get_item_visual_count);
|
||||
ClassDB::bind_method(D_METHOD("clear_item_visuals"), &CharacterSkeleton3D::clear_item_visuals);
|
||||
ClassDB::bind_method(D_METHOD("add_model_visual", "vis"), &CharacterSkeleton3D::add_model_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_model_visual", "vis"), &CharacterSkeleton3D::remove_model_visual);
|
||||
ClassDB::bind_method(D_METHOD("remove_model_visual_index", "index"), &CharacterSkeleton3D::remove_model_visual_index);
|
||||
ClassDB::bind_method(D_METHOD("get_model_visual", "index"), &CharacterSkeleton3D::get_model_visual);
|
||||
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);
|
||||
|
||||
BIND_VMETHOD(MethodInfo("_build_model"));
|
||||
|
||||
@ -422,8 +422,8 @@ void CharacterSkeleton3D::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("set_animation_tree_path", "path"), &CharacterSkeleton3D::set_animation_tree_path);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::NODE_PATH, "animation_tree_path"), "set_animation_tree_path", "get_animation_tree_path");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("add_item_visual_entry", "vis", "ive"), &CharacterSkeleton3D::add_item_visual_entry);
|
||||
ClassDB::bind_method(D_METHOD("remove_item_visual_entry", "vis", "ive"), &CharacterSkeleton3D::remove_item_visual_entry);
|
||||
ClassDB::bind_method(D_METHOD("add_model_visual_entry", "vis", "ive"), &CharacterSkeleton3D::add_model_visual_entry);
|
||||
ClassDB::bind_method(D_METHOD("remove_model_visual_entry", "vis", "ive"), &CharacterSkeleton3D::remove_model_visual_entry);
|
||||
ClassDB::bind_method(D_METHOD("get_model_entry", "bone_index", "index"), &CharacterSkeleton3D::get_model_entry);
|
||||
ClassDB::bind_method(D_METHOD("get_model_entry_count", "bone_index"), &CharacterSkeleton3D::get_model_entry_count);
|
||||
|
||||
|
@ -35,7 +35,7 @@ SOFTWARE.
|
||||
#include "../entity_enums.h"
|
||||
#include "skeleton_model_entry.h"
|
||||
|
||||
#include "../data/items/item_visual_entry.h"
|
||||
#include "../data/items/model_visual_entry.h"
|
||||
|
||||
#include "core/version.h"
|
||||
|
||||
@ -47,7 +47,7 @@ SOFTWARE.
|
||||
#define Texture Texture2D
|
||||
#endif
|
||||
|
||||
class ItemVisual;
|
||||
class ModelVisual;
|
||||
|
||||
//Rename to HumanoidCharSkeleton -> maybe make that a subclass?
|
||||
class CharacterSkeleton3D : public Spatial {
|
||||
@ -77,15 +77,15 @@ public:
|
||||
|
||||
void update_nodes();
|
||||
|
||||
void add_item_visual(Ref<ItemVisual> vis);
|
||||
void remove_item_visual(Ref<ItemVisual> vis);
|
||||
void remove_item_visual_index(int index);
|
||||
Ref<ItemVisual> get_item_visual(int index);
|
||||
int get_item_visual_count();
|
||||
void clear_item_visuals();
|
||||
void add_model_visual(Ref<ModelVisual> vis);
|
||||
void remove_model_visual(Ref<ModelVisual> vis);
|
||||
void remove_model_visual_index(int index);
|
||||
Ref<ModelVisual> get_model_visual(int index);
|
||||
int get_model_visual_count();
|
||||
void clear_model_visuals();
|
||||
|
||||
void add_item_visual_entry(Ref<ItemVisual> vis, Ref<ItemVisualEntry> ive, int target_bone);
|
||||
void remove_item_visual_entry(Ref<ItemVisual> vis, Ref<ItemVisualEntry> ive, int target_bone);
|
||||
void add_model_visual_entry(Ref<ModelVisual> vis, Ref<ModelVisualEntry> ive, int target_bone);
|
||||
void remove_model_visual_entry(Ref<ModelVisual> vis, Ref<ModelVisualEntry> ive, int target_bone);
|
||||
|
||||
Ref<SkeletonModelEntry> get_model_entry(const int bone_index, const int index);
|
||||
int get_model_entry_count(const int bone_index);
|
||||
@ -129,7 +129,7 @@ private:
|
||||
Node *_bone_nodes[EntityEnums::SKELETON_POINTS_MAX];
|
||||
|
||||
bool _model_dirty;
|
||||
Vector<Ref<ItemVisual> > _item_visuals;
|
||||
Vector<Ref<ModelVisual> > _model_visuals;
|
||||
Vector<Ref<SkeletonModelEntry> > _entries[EntityEnums::SKELETON_POINTS_MAX];
|
||||
};
|
||||
|
||||
|
@ -43,10 +43,10 @@ void SkeletonModelEntry::set_color(const Color value) {
|
||||
_color = value;
|
||||
}
|
||||
|
||||
Ref<ItemVisualEntry> SkeletonModelEntry::get_entry() {
|
||||
Ref<ModelVisualEntry> SkeletonModelEntry::get_entry() {
|
||||
return _entry;
|
||||
}
|
||||
void SkeletonModelEntry::set_entry(Ref<ItemVisualEntry> entry) {
|
||||
void SkeletonModelEntry::set_entry(Ref<ModelVisualEntry> entry) {
|
||||
_entry = entry;
|
||||
}
|
||||
|
||||
@ -75,5 +75,5 @@ void SkeletonModelEntry::_bind_methods() {
|
||||
|
||||
ClassDB::bind_method(D_METHOD("get_entry"), &SkeletonModelEntry::get_entry);
|
||||
ClassDB::bind_method(D_METHOD("set_entry", "path"), &SkeletonModelEntry::set_entry);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "entry", PROPERTY_HINT_RESOURCE_TYPE, "ItemVisualEntry"), "set_entry", "get_entry");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::OBJECT, "entry", PROPERTY_HINT_RESOURCE_TYPE, "ModelVisualEntry"), "set_entry", "get_entry");
|
||||
}
|
||||
|
@ -23,7 +23,7 @@ SOFTWARE.
|
||||
#ifndef SKELETON_MODEL_ENTRY_H
|
||||
#define SKELETON_MODEL_ENTRY_H
|
||||
|
||||
#include "../data/items/item_visual_entry.h"
|
||||
#include "../data/items/model_visual_entry.h"
|
||||
#include "core/reference.h"
|
||||
|
||||
class SkeletonModelEntry : public Reference {
|
||||
@ -39,8 +39,8 @@ public:
|
||||
Color get_color() const;
|
||||
void set_color(const Color value);
|
||||
|
||||
Ref<ItemVisualEntry> get_entry();
|
||||
void set_entry(Ref<ItemVisualEntry> entry);
|
||||
Ref<ModelVisualEntry> get_entry();
|
||||
void set_entry(Ref<ModelVisualEntry> entry);
|
||||
|
||||
SkeletonModelEntry();
|
||||
~SkeletonModelEntry();
|
||||
@ -52,7 +52,7 @@ private:
|
||||
int _count;
|
||||
int _priority;
|
||||
Color _color;
|
||||
Ref<ItemVisualEntry> _entry;
|
||||
Ref<ModelVisualEntry> _entry;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user