mirror of
https://github.com/Relintai/entity_spell_system.git
synced 2025-05-09 22:41:39 +02:00
Also added a property for serverside skills.
This commit is contained in:
parent
545bd9b4de
commit
f7847dfafc
@ -4335,6 +4335,13 @@ void Entity::skill_changec_max(int skill_id, int value) {
|
||||
}
|
||||
}
|
||||
|
||||
Vector<Variant> Entity::sskills_get() {
|
||||
VARIANT_ARRAY_GET(_s_skills);
|
||||
}
|
||||
void Entity::sskills_set(const Vector<Variant> &data) {
|
||||
VARIANT_ARRAY_SET(data, _s_skills, EntitySkill);
|
||||
}
|
||||
|
||||
//// Casting System ////
|
||||
|
||||
bool Entity::cast_is_castings() {
|
||||
@ -6362,20 +6369,6 @@ bool Entity::_set(const StringName &p_name, const Variant &p_value) {
|
||||
}
|
||||
}
|
||||
|
||||
//// Skills ////
|
||||
|
||||
Dictionary skills = dict.get("skills", Dictionary());
|
||||
|
||||
for (int i = 0; i < skills.size(); ++i) {
|
||||
Ref<EntitySkill> r;
|
||||
r.instance();
|
||||
|
||||
r->from_dict(skills.get(String::num(i), Dictionary()));
|
||||
|
||||
_s_skills.push_back(r);
|
||||
_c_skills.push_back(r);
|
||||
}
|
||||
|
||||
//// Actionbars ////
|
||||
|
||||
_actionbar_locked = dict.get("actionbar_locked", false);
|
||||
@ -6514,16 +6507,6 @@ bool Entity::_get(const StringName &p_name, Variant &r_ret) const {
|
||||
|
||||
dict["known_spells"] = known_spells;
|
||||
|
||||
//// Skills ////
|
||||
|
||||
Dictionary skills;
|
||||
|
||||
for (int i = 0; i < _s_skills.size(); ++i) {
|
||||
skills[i] = _s_skills.get(i)->to_dict();
|
||||
}
|
||||
|
||||
dict["skills"] = skills;
|
||||
|
||||
//// Actionbars ////
|
||||
|
||||
dict["actionbar_locked"] = _actionbar_locked;
|
||||
@ -7219,7 +7202,7 @@ void Entity::_bind_methods() {
|
||||
|
||||
ClassDB::bind_method(D_METHOD("sresources_get"), &Entity::sresources_get);
|
||||
ClassDB::bind_method(D_METHOD("sresources_set", "caster_aura_applys"), &Entity::sresources_set);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "sresources", PROPERTY_HINT_NONE, "17/17:EntityResource", PROPERTY_USAGE_DEFAULT, "EntityResource"), "sresources_set", "sresources_get");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "sresources", PROPERTY_HINT_NONE, "17/17:EntityResource", PROPERTY_USAGE_STORAGE, "EntityResource"), "sresources_set", "sresources_get");
|
||||
|
||||
//GCD
|
||||
ADD_SIGNAL(MethodInfo("sgcd_started", PropertyInfo(Variant::OBJECT, "entity", PROPERTY_HINT_RESOURCE_TYPE, "Entity"), PropertyInfo(Variant::REAL, "value")));
|
||||
@ -7258,7 +7241,7 @@ void Entity::_bind_methods() {
|
||||
|
||||
ClassDB::bind_method(D_METHOD("getc_state"), &Entity::getc_state);
|
||||
ClassDB::bind_method(D_METHOD("setc_state", "state"), &Entity::setc_state);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "cstate"), "setc_state", "getc_state");
|
||||
ADD_PROPERTY(PropertyInfo(Variant::INT, "cstate", PROPERTY_HINT_NONE, "", PROPERTY_USAGE_STORAGE), "setc_state", "getc_state");
|
||||
|
||||
ClassDB::bind_method(D_METHOD("gets_state"), &Entity::gets_state);
|
||||
ClassDB::bind_method(D_METHOD("sets_state", "state"), &Entity::sets_state);
|
||||
@ -7427,6 +7410,10 @@ void Entity::_bind_methods() {
|
||||
ClassDB::bind_method(D_METHOD("skill_changec", "skill_id", "value"), &Entity::skill_changec);
|
||||
ClassDB::bind_method(D_METHOD("skill_changec_max", "skill_id", "value"), &Entity::skill_changec_max);
|
||||
|
||||
ClassDB::bind_method(D_METHOD("sskills_get"), &Entity::sskills_get);
|
||||
ClassDB::bind_method(D_METHOD("sskills_set", "data"), &Entity::sskills_set);
|
||||
ADD_PROPERTY(PropertyInfo(Variant::ARRAY, "sskills", PROPERTY_HINT_NONE, "17/17:EntitySkill", PROPERTY_USAGE_STORAGE, "EntitySkill"), "sskills_set", "sskills_get");
|
||||
|
||||
//skeleton
|
||||
ClassDB::bind_method(D_METHOD("get_body"), &Entity::get_body);
|
||||
ClassDB::bind_method(D_METHOD("get_body_3d"), &Entity::get_body_3d);
|
||||
|
@ -790,6 +790,9 @@ public:
|
||||
void skill_changec(int skill_id, int value);
|
||||
void skill_changec_max(int skill_id, int value);
|
||||
|
||||
Vector<Variant> sskills_get();
|
||||
void sskills_set(const Vector<Variant> &data);
|
||||
|
||||
//// Target ////
|
||||
|
||||
void target_crequest_change(NodePath path);
|
||||
|
Loading…
Reference in New Issue
Block a user